У меня есть 2 таблицы, и я хочу получить записи из 1 таблицы и «обновить» одно из ее полей из другой таблицы, а также передать куда-нибудь окончательный список объектов «Оплата». Я не могу использовать анонимный тип, мне нужно получить список правильных типизированных объектов.
Был долгий путь.
Получил данные:
var paymentsToShow = from p in paymentsRepository.Payments
join r in recordTypeRepository.RecordType
on p.RecordType equals r.Reference into p_r
where p.Customer == CustomerRef
from r in p_r.DefaultIfEmpty()
select new
{
Payment = p,
RecordType = r
};
var objList = paymentsToShow.ToList();
Изменить обязательное поле (в основном, Payment.RecordTypeName пусто):
foreach (var obj in objList)
{
obj.Payment.RecordTypeName = obj.RecordType.Name;
}
Получил список с правильным типом:
var paymentsList = from o in objList
select o.Payment;
Есть ли способ сократить код, внести необходимые изменения в поле в запросе или что-то еще? Я не знаю, где искать.
Я не могу изменить базу данных.