/// <summary> /// Check data /// </summary> /// <param name="command">Cache action command</param> /// <returns>Return determine data whether is exist</returns> public async Task <bool> ExistAsync <T>(ExistDataCacheCommand <T> command) where T : BaseEntity <T>, new() { if (command == null) { return(false); } Type dataType = typeof(T); IQuery checkQuery; if (command.Query != null) { var primaryKeys = EntityManager.GetPrimaryKeys(dataType); checkQuery = command.Query.LightClone(); checkQuery.ClearOrder(); checkQuery.ClearQueryFields(); checkQuery.ClearNotQueryFields(); checkQuery.AddQueryFields(primaryKeys.ToArray()); } else { checkQuery = QueryManager.Create <T>(); } checkQuery.QuerySize = 1; var data = await GetAsync(new GetDataCacheCommand <T>() { GetDatabaseDataProxyAsync = command.GetDatabaseDataProxyAsync, Query = checkQuery }).ConfigureAwait(false); return(data != null); }
/// <summary> /// Check data /// </summary> /// <param name="command">Cache action command</param> /// <returns>Return determine data whether is exist</returns> public bool Exist <T>(ExistDataCacheCommand <T> command) where T : BaseEntity <T>, new() { return(ExistAsync(command).Result); }