ฉันได้รับข้อผิดพลาดนี้สำหรับข้อความค้นหาด้านล่าง
API.Models.PersonProtocol
ไม่สามารถสร้างค่าคงที่ของประเภท สนับสนุนชนิดดั้งเดิมหรือชนิดการแจงนับเท่านั้นในบริบทนี้
ppCombined
ด้านล่างเป็นIEnumerable
วัตถุของPersonProtocolType
ซึ่งถูกสร้างขึ้นโดย concat ของ 2 PersonProtocol
รายการ
เหตุใดจึงล้มเหลว เราไม่สามารถใช้ LINQ JOIN
ข้อภายในSELECT
ของ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
})
});