internal static Task <T?> SingleOrDefaultAsync <T>(this IQueryable <T> queryable) { if (queryable is IMongoQueryable <T> mongoQueryable) { return(MongoQueryable.SingleOrDefaultAsync(mongoQueryable)); } return(Task.FromResult(Queryable.SingleOrDefault(queryable))); }
internal static Task <T?> SingleOrDefaultAsync <T>(this IQueryable <T> queryable, Expression <Func <T, bool> > filter) { if (queryable is IMongoQueryable <T> mongoQueryable) { return(MongoQueryable.SingleOrDefaultAsync(mongoQueryable, filter)); } return(Task.FromResult(Queryable.SingleOrDefault(queryable, filter))); }
public static async Task <T> SingleOrDefaultAsync <T>(this IQueryable <T> queryable) { if (queryable is IMongoQueryable <T> mongoQueryable) { return(await MongoQueryable.SingleOrDefaultAsync(mongoQueryable)); } else { return(queryable.SingleOrDefault()); } }
public static async Task <T> SingleOrDefaultAsync <T>(this IQueryable <T> queryable, Expression <Func <T, bool> > predicate) { if (queryable is IMongoQueryable <T> mongoQueryable) { return(await MongoQueryable.SingleOrDefaultAsync(mongoQueryable, predicate)); } else { return(queryable.SingleOrDefault(predicate)); } }
public static Task <TEntity> SingleOrDefaultAsync <TEntity>(this IQueryable <TEntity> source, CancellationToken cancellationToken = default) => MongoQueryable.SingleOrDefaultAsync((IMongoQueryable <TEntity>)source, cancellationToken);