public IUser FindByUserName(string userName) #endif { Check.Argument.IsNotEmpty(userName, "userName"); return(DataContext != null?FindByUserNameQuery.Invoke(DataContext, userName.Trim()) : Database.UserDataSource.FirstOrDefault(u => u.UserName == userName.Trim())); }
protected override TDto OnHandle(FindByUserNameQuery <TDto, TEntity> query) { var cacheIndex = CacheKey.NewIndex <TDto, string>(nameof(query.UserName), query.UserName); return(_cacheService.Get(cacheIndex, () => { TDto result; using (var uow = _uowFactory.CreateReadOnly()) { var userName = query.UserName; var entity = uow.Context.Query <TEntity>().SingleOrDefault(s => s.UserName == userName); result = _entityMapperFactory.Create <TDto, TEntity>().Map(entity); uow.Complete(); } return result; })); }