public virtual List <TProperty> Query <TProperty>(QueryPropertyContext <TProperty> context) where TProperty : PropertyEntity { using (var db = context.ContextProvider.Provide()) { return(db.Set <TProperty>() .Where(s => s.UserId == context.UserId) .Where(context.Predicate) .ToList()); } }
public List <TPropertyModel> Query <TPropertyModel>() { var repository = _repositoryProviderProvider.Provide <IPropertyQueryRepository>().Provide(); var context = new QueryPropertyContext <TPropertyEntity> { ContextProvider = _contextProvider, Predicate = s => true, UserId = UserContext.Current.UserId }; var properties = repository.Query(context); return(Mapper.Map <List <TPropertyModel> >(properties)); }
public TPropertyModel First <TPropertyModel>(Guid id) { var repository = _repositoryProviderProvider.Provide <IPropertyQueryRepository>().Provide(); var context = new QueryPropertyContext <TPropertyEntity> { ContextProvider = _contextProvider, Predicate = s => s.Id == id, UserId = UserContext.Current.UserId }; var property = repository.First(context); return(Mapper.Map <TPropertyModel>(property)); }