using TEAMModelOS.SDK.Module.AzureTable.Configuration; using TEAMModelOS.SDK.Extension.DataResult.PageToken; using Microsoft.WindowsAzure.Storage.Table; using System.Collections.Generic; using System.Threading.Tasks; namespace TEAMModelOS.SDK.Module.AzureTable.Interfaces { public interface IAzureTableDBRepository { Task> GetEntities(IDictionary dict) where T : TableEntity, new(); Task FindOneByDict(IDictionary dict) where T : TableEntity, new(); Task FindByRowKey(string RowKey) where T : TableEntity, new(); Task Save(TableEntity entity) where T : TableEntity, new(); Task Update(TableEntity entity) where T : TableEntity, new(); Task Delete(TableEntity entity) where T : TableEntity, new(); Task FindOneByKey(string key, object value) where T : TableEntity, new(); Task> FindListByDict(Dictionary dict) where T : TableEntity, new(); Task> FindListByKey(string key, object value) where T : TableEntity, new(); Task> FindAll() where T : TableEntity, new(); Task> DeleteAll(List entitys) where T : TableEntity, new(); Task> UpdateAll(List entitys) where T : TableEntity, new(); Task> SaveAll(List entitys) where T : TableEntity, new(); //Task> FindListByDictAndLike( // Dictionary dict, // Dictionary likeDict) where T : TableEntity, new(); //Task> FindListByDictAndLikeAndStartWith( // Dictionary dict, // Dictionary likeDict, // Dictionary startDict) where T : TableEntity, new(); //Task> FindListByDictAndLikeAndNotEQ( // Dictionary dict, // Dictionary likeDict, // Dictionary notEQDict) where T : TableEntity, new(); //Task Count() where T : TableEntity, new(); //Task> FindListByDict(Dictionary dict, AzurePagination pagination) where T : TableEntity, new(); Task> FindListByDict(Dictionary dict, AzureTableToken azureTableToken) where T : TableEntity, new(); Task SaveOrUpdate(TableEntity entity) where T : TableEntity, new(); Task> SaveOrUpdateAll(List entitys) where T : TableEntity, new(); } }