Я получаю эту ошибку по запросу ниже
Невозможно создать постоянное значение типа
API.Models.PersonProtocol. В этом контексте поддерживаются только примитивные типы или типы перечисления
ppCombinedниже находится IEnumerableобъект PersonProtocolType, который состоит из двух PersonProtocolсписков.
Почему это не удается? Разве мы не можем использовать JOINпредложение LINQ внутри SELECTa JOIN?
var persons = db.Favorites
.Where(x => x.userId == userId)
.Join(db.Person, x => x.personId, y => y.personId, (x, y) =>
new PersonDTO
{
personId = y.personId,
addressId = y.addressId,
favoriteId = x.favoriteId,
personProtocol = (ICollection<PersonProtocol>) ppCombined
.Where(a => a.personId == x.personId)
.Select( b => new PersonProtocol()
{
personProtocolId = b.personProtocolId,
activateDt = b.activateDt,
personId = b.personId
})
});