У меня есть два списка. Они оба заполняются через базу данных:
- ListA: ID, PayID, PayDes c, ListB
- ListB: ID, PayID, MoneyDes c
где ListB выглядит так:
ID PayID MoneyDesc
1 2 a
1 3 b
1 4 c
Фрагмент кода, в котором я получаю сообщение об ошибке, выглядит примерно так:
ListA.FirstOrDefault().ListB =
(from b in ListB where (ListA.Any(x => x.PayID == b.PayID) select b))
.ToList().FirstOrDefault();
То, что я хочу получить, выглядит примерно так:
select moneydesc
from listb b
inner join lista a on b.payid = a.payid
Но я получаю сообщение об ошибке «EntityReference может иметь не более одного связанного объекта». Однако, если ListB
ID
отличаются для каждой строки, скажем, 7, 8 и 9, соответственно, ошибка не возникает.
Как мне достичь того, что я имел в виду? Кроме того, FirstOrDefault()
не может справиться с этим, поскольку он получает первый элемент в последовательности?