Beispiel #1
0
 public static Task <T> FirstOrDefaultAsync <T>(this IQueryable <T> source)
 {
     if (IsInUnitTest)
     {
         return(Task.FromResult(source.FirstOrDefault()));
     }
     return(QE.FirstOrDefaultAsync(source));
 }
Beispiel #2
0
 public static Task <T> FirstOrDefaultAsync <T>(this IQueryable <T> source, Expression <Func <T, bool> > predicate)
 {
     if (IsInUnitTest)
     {
         return(Task.FromResult(source.FirstOrDefault(predicate)));
     }
     return(QE.FirstOrDefaultAsync(source, predicate));
 }
Beispiel #3
0
 public static IQueryable <T> Include <T, TProperty>(this IQueryable <T> source, Expression <Func <T, TProperty> > path)
 {
     if (IsInUnitTest)
     {
         return(source);
     }
     return(QE.Include(source, path));
 }
Beispiel #4
0
 public static Task <int> CountAsync <T>(this IQueryable <T> source)
 {
     if (IsInUnitTest)
     {
         return(Task.FromResult(source.Count()));
     }
     return(QE.CountAsync(source));
 }
Beispiel #5
0
 public static Task LoadAsync(this IQueryable source)
 {
     if (IsInUnitTest)
     {
         return(Task.FromResult(source));
     }
     return(QE.LoadAsync(source));
 }
Beispiel #6
0
 public static Task <List <T> > ToListAsync <T>(this IQueryable <T> source)
 {
     if (IsInUnitTest)
     {
         return(Task.FromResult(source.ToList()));
     }
     return(QE.ToListAsync(source));
 }
Beispiel #7
0
 public static Task <T[]> ToArrayAsync <T>(this IQueryable <T> source)
 {
     if (IsInUnitTest)
     {
         return(Task.FromResult(source.ToArray()));
     }
     return(QE.ToArrayAsync(source));
 }
Beispiel #8
0
 public static Task <bool> AnyAsync <T>(this IQueryable <T> source)
 {
     if (IsInUnitTest)
     {
         return(Task.FromResult(source.Any()));
     }
     return(QE.AnyAsync(source));
 }
Beispiel #9
0
 public static IQueryable <T> AsNoTracking <T>(this IQueryable <T> source)
     where T : class
 {
     if (IsInUnitTest)
     {
         return(source);
     }
     return(QE.AsNoTracking(source));
 }
        public static Task <T> FirstOrDefaultAsync <T>(this IQueryable <T> source, Expression <Func <T, bool> > predicate)
            where T : class
        {
            if (source is EntitySet <T> )
            {
                source = (source as EntitySet <T>).DbSet;
            }

            return(Extensions.FirstOrDefaultAsync(source, predicate));
        }
        public static Task <int> CountAsync <T>(this IQueryable <T> source)
            where T : class
        {
            if (source is EntitySet <T> )
            {
                source = (source as EntitySet <T>).DbSet;
            }

            return(Extensions.CountAsync(source));
        }
Beispiel #12
0
        public static Task <T[]> ToArrayAsync <T>(this IQueryable <T> source)
            where T : class
        {
            if (source is EntitySet <T> )
            {
                source = (source as EntitySet <T>).DbSet;
            }
            else
            {
                return(Task.Run(() => source.ToArray()));
            }

            return(Extensions.ToArrayAsync(source));
        }
Beispiel #13
0
        public static async Task <T> FirstOrDefaultAsync <T>(this IQueryable <T> source, Expression <Func <T, bool> > predicate)
            where T : class
        {
            if (predicate == null)
            {
                throw new ArgumentNullException($"The {nameof(predicate)} can not be null.");
            }

            if (source is EntitySet <T> )
            {
                source = (source as EntitySet <T>).DbSet;
            }

            T result = await Extensions.FirstOrDefaultAsync(source, predicate).ConfigureAwait(continueOnCapturedContext: false);

            return(result);
        }