У меня есть следующие объекты:
public class Position
{
public Int32 Id { get; set; }
public virtual ICollection<Role> Roles { get; set; }
}
public class Role
{
public Int32 PositionId { get; set; }
public Int32 UserId { get; set; }
public virtual Position Position { get; set; }
public virtual User User { get; set; }
}
Мне нужно получить все Positions
, в котором есть Role
с UserId = userId
.
Я заставил его работать, используя следующие:
positions = positions
.Where(x => x.Roles.Select(y => y.UserId).Contains(userId));
Как я могу сделать это с SelectMany
?Это лучше?
Обратите внимание, что мне нужно вернуть позиции ... Это была моя проблема при использовании SelectMany
.