Considere этот кусок кода в LINQ (пожалуйста, внимание на вар list2
):Получение поля, которое не принадлежит к модели
var list1 = ....... /* This linq doesnt matter. Just for clarify that it is used in the below linq */
var list2 = dba.OrderForm
.Where(q => q.OrderPriority.OrderPriorityID == orderpriorityID
&& q.StockClass.StockClassID == stockclassID
&& dba.AuditTrailLog.Where(log => q.OrderID == log.ObjectID)
.Any(log => log.ColumnInfoID == 486
&& log.OldValue == "2"
&& log.NewValue == "3")
&& dba.AuditTrailLog.Where(log2 => q.OrderID == log2.ObjectID)
.Any(log2 => log2.ColumnInfoID == 487
&& log2.OldValue == "1"
&& log2.NewValue == "2")
&& lista.Contains(q.OrderID));
Таким образом, я имею в list2 список записей, принадлежащих к OrderForm
модели , Мне нужно, чтобы передать его на другую модель под названием ViewResult
:
Что мне нужно, чтобы получить переменную log2.ModificationDate
, которая принадлежит к AuditTrailLog
таблице, но это не входит в OrderForm
Модель
List<ViewResult> vr = new List<ViewResult>();
foreach (OrderForm o in list2)
{
ViewResult r = new ViewResult();
r.NumOrden = o.FormNo;
r.Title = o.Title;
r.Com = o.OrderPriority.Descr;
r.OClass = o.StockClass.Descr;
r.RodT = /* <<------ Here is where I need to assign log2.ModificationDate
vr.Add(r);
}
Спасибо.
Спасибо за ваш ответ @JustWork. Извините, если я не объяснил это правильно. Связь между 'OrderForm-AuditTrailLog' не равна нулю. Мне нужно получить в 'r.RodT' дату, когда была изменена каждая запись таблицы' OrderForm' ('log2.ModificationDate' в LINQ), которая записана в таблице AuditTraiLog. – equisde
Соотношение между таблицами 'OrderForm/AuditTrailLog' равно 1: N. Я использовал 'var list2 = dba.OrderForm.Include (" AuditTrailLog ")' как вы предлагали, но я не могу выполнить 'r.RodT = o.AuditTrailLog.ModificationDate' ни' r.RodT = log2.ModificationDate' – equisde
Если есть ModificationDate значение в таблице AuditTrailLog, и вы не получите его равным нулю при получении данных, вам не удастся выполнить ModificationDate. У вас что-то не так. Или я понимаю, что ты совершенно неправ. Вы отлаживали его? Вы уверены, что AuditTrailLog не является нулевым? – JustWork