Example #1
0
        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()));
        }
Example #2
0
        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;
            }));
        }