у меня ViewModel
UserGroup.cs
public class UserGroup
{
public User User { get; set; }
public List<Group> Groups { get; set; }
}
И я хочу иметь User
и все связанные Groups
. Проблема в том, что query
возвращает дубликаты всех пользователей, если с ним связано более 1 группы (и, конечно, ожидается). Первое, что приходит мне в голову, - это выборка всех пользователей одним запросом, а затем поиск каждого пользователя, чтобы получить связанные с ним группы и поместить его в список. Но я ищу лучший способ (если есть) сделать это.
Связь устанавливается с помощью соединительной таблицы.
SQL-запрос
SELECT u.UserName, ug.GroupName FROM auth.UserUserGroup uug
INNER JOIN [auth].[User] u ON u.UserId = uug.UserId
INNER JOIN auth.UserGroup ug ON ug.UserGroupId = uug.UserGroupId