public FullUser Read(string login, string password) { if (login == null || password == null) { login = ""; password = ""; } List <User> users = _userServices.Read(login: login, password: password); if (users.Count == 0) { throw new ArgumentException(); } List <Worker> workers = _workerServices.Read(minPassportNumber: users[0].WorkerId, maxPassportNumber: users[0].WorkerId); List <UserRole> userRoles = _userRoleServices.Read(minUserId: users[0].Id, maxUserId: users[0].Id); List <Role> roles = new List <Role>(); foreach (UserRole item in userRoles) { var roleList = _roleServices.Read(minId: item.RoleId, maxId: item.RoleId); roles.Add(roleList[0]); } FullUser result = new FullUser { User = users[0], Worker = workers[0], Roles = roles }; return(result); }