public static TEntity Find <TEntity, TOptions>( this ICrudService <TEntity, TOptions> service, TEntity entity, object context = null) where TEntity : IEntity where TOptions : ICrudServiceOptions => service.Find(service.CreateEqualityComparerExpression(entity), context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context));
public static IEnumerable <TEntity> FindAll <TEntity, TOptions>( this ICrudService <TEntity, TOptions> service, IEnumerable <TEntity> entities, object context = null) where TEntity : IEntity where TOptions : ICrudServiceOptions => service.FindAll(service.CreateEqualityComparerExpression(entities), context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context));
public static Task <TSelect> FindAsync <TEntity, TOptions, TSelect>( this ICrudService <TEntity, TOptions> service, TEntity entity, Expression <Func <TEntity, TSelect> > select, object context = null) where TEntity : IEntity where TOptions : ICrudServiceOptions => Task.Run(() => service.Find(service.CreateEqualityComparerExpression(entity), select, context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context)));
public static TEntity Find <TEntity, TOptions>( this ICrudService <TEntity, TOptions> service, Expression <Func <TEntity, bool> > predicate, object context = null) where TEntity : IEntity where TOptions : ICrudServiceOptions => service.Find(predicate, context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context));
public static bool Delete <TEntity, TOptions, TId>( this IIdCrudService <TEntity, TOptions, TId> service, TId id, object context = null) where TEntity : IIdEntity <TId> where TOptions : ICrudServiceOptions => service.Delete(id, context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context));
public static TSelect Find <TEntity, TOptions, TSelect, TId>( this IIdCrudService <TEntity, TOptions, TId> service, TId id, Expression <Func <TEntity, TSelect> > select, object context = null) where TEntity : IIdEntity <TId> where TOptions : ICrudServiceOptions => service.Find(id, select, context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context));
public static IEnumerable <TEntity> Delete <TEntity, TOptions>( this ICrudService <TEntity, TOptions> service, object context, params TEntity[] entities) where TEntity : IEntity where TOptions : ICrudServiceOptions => service.Delete(entities, context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context));
public static TEntity Delete <TEntity, TOptions>( this ICrudService <TEntity, TOptions> service, TEntity entity, object context = null) where TEntity : IEntity where TOptions : ICrudServiceOptions => service.Delete(new[] { entity }, context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context)).FirstOrDefault();
public static Task <IEnumerable <TEntity> > InsertOrUpdateAsync <TEntity, TOptions>( this ICrudService <TEntity, TOptions> service, object context, params TEntity[] entities) where TEntity : IEntity where TOptions : ICrudServiceOptions => Task.Run(() => service.InsertOrUpdate(entities, context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context)));
public static IEnumerable <TEntity> GetAll <TEntity, TOptions>( this ICrudService <TEntity, TOptions> service, object context = null) where TEntity : IEntity where TOptions : ICrudServiceOptions => service.GetAll( context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context));
public static Task <IEnumerable <TEntity> > FindAllAsync <TEntity, TOptions>( this ICrudService <TEntity, TOptions> service, Expression <Func <TEntity, bool> > predicate, object context = null) where TEntity : IEntity where TOptions : ICrudServiceOptions => Task.Run(() => service.FindAll(predicate, context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context)));
public static Task <bool> UpdateAsync <TEntity, TOptions, TId>( this IIdCrudService <TEntity, TOptions, TId> service, TId id, TEntity newValues, object context = null) where TEntity : IIdEntity <TId> where TOptions : ICrudServiceOptions => Task.Run(() => service.Update(id, newValues, context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context)));
public static Task <TEntity> FindAsync <TEntity, TOptions, TId>( this IIdCrudService <TEntity, TOptions, TId> service, TId id, object context = null) where TEntity : IIdEntity <TId> where TOptions : ICrudServiceOptions => Task.Run(() => service.Find(id, context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context)));
public static Task <IEnumerable <TEntity> > DeleteAsync <TEntity, TOptions>( this ICrudService <TEntity, TOptions> service, IEnumerable <TEntity> entities, object context = null) where TEntity : IEntity where TOptions : ICrudServiceOptions => Task.Run(() => service.Delete(entities, context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context)));
public static Task <IEnumerable <TSelect> > GetAllAsync <TEntity, TOptions, TSelect>( this ICrudService <TEntity, TOptions> service, Expression <Func <TEntity, TSelect> > select, object context = null) where TEntity : IEntity where TOptions : ICrudServiceOptions => Task.Run(() => service.GetAll(select, context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context)));
public static IEnumerable <TSelect> FindAll <TEntity, TOptions, TSelect>( this ICrudService <TEntity, TOptions> service, Expression <Func <TEntity, bool> > predicate, Expression <Func <TEntity, TSelect> > select, object context = null) where TEntity : IEntity where TOptions : ICrudServiceOptions => service.FindAll(predicate, select, context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context));
public static IEnumerable <TEntity> InsertOrUpdate <TEntity, TOptions>( this ICrudService <TEntity, TOptions> service, IEnumerable <TEntity> entities, object context = null) where TEntity : IEntity where TOptions : ICrudServiceOptions => service.InsertOrUpdate(entities, context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context));
public static Task <TEntity> InsertOrUpdateAsync <TEntity, TOptions>( this ICrudService <TEntity, TOptions> service, TEntity entity, object context = null) where TEntity : IEntity where TOptions : ICrudServiceOptions => Task.Run(() => service.InsertOrUpdate(new[] { entity }, context == null ? DefaultCrudServiceOptions.Default <TOptions>() : DefaultCrudServiceOptions.FromContext <TOptions>(context)).FirstOrDefault());