/// <summary> /// Finds User by given criteria /// </summary> /// <param name="criteria"> The criteria. </param> /// <returns> The <see cref="User"/>. </returns> public Task <User> ExecuteAsync(FindByNameCriteria criteria) { var query = _unitOfWork.Context.Users.Where(u => u.UserName == criteria.Name); // ToDo: Use Automapper to substitute Select clause return(query.Select(GetUserMapping()).FirstOrDefaultAsync()); }
/// <summary> /// Retrieves user by given Name /// </summary> /// <param name="userName">Name of the user</param> /// <returns> Found User </returns> public async Task <UserModel> FindByNameAsync(string userName) { var criteria = new FindByNameCriteria { Name = userName }; var user = await _getByNameQuery.ExecuteAsync(criteria); return(CreateUserModel(user)); }
public Team Execute(FindByNameCriteria criteria) { var teamEntity = _dalTeams.FirstOrDefault(t => t.Name == criteria.Name); return(teamEntity != null?GetTeamMapping(teamEntity) : null); }