Я настраиваю метод для получения данных Xml, данные которых берутся из таблиц базы данных. Вышеупомянутые функции работали до обновления проекта .Net Core2.1
до .Net Core 3.1.1
. Этот код ниже показывает ошибку.
Template.cs
orderTemplate =
(from ordt in _context.OrderTemplates
where ordt.Id == orderTempId // int orderTempId=1;
select new XElement("OrderTemplate",
new XElement("OrderTemplateId", ordt.Id),
new XElement("OrderTemplateName", ordt.Name),
new XElement("OrderTemplateDescription", ordt.Description)));
Исключение
Client projection contains reference to constant expression of 'System.Xml.Linq.XName'.
This could potentially cause memory leak. Consider assigning this constant to local variable
and using the variable in the query instead. See https://go.microsoft.com/fwlink/?linkid=2103067 for more information.
XML Формат данных :( Ожидаемый результат)
<OrderTemplate>
<OrderTemplateId>1</OrderTemplateId>
<OrderTemplateName>BBCSeat</OrderTemplateName>
<OrderTemplateDescription>Boeing Business Class Seat</OrderTemplateDescription>
</OrderTemplate>
Template.cs (Rediited)
orderTemplate =
(from ordt in _context.OrderTemplates
where ordt.Id == orderTemplateId
select new {
_OrderTemplate = ordt,
_OperationTemplates =(from ot in _context.OrderTemplates
join opt in _context.OperationTemplates
on ot.Id equals opt.OrderTemplateId into ps1
from opt in ps1.DefaultIfEmpty()
join asm in _context.AssemblyUnits
on opt.AssemblyUnitId equals asm.Id into ps5
from asm in ps5.DefaultIfEmpty()
where ot.Id == ordt.Id
orderby opt.OrderBy ascending
select new
{
_OperationTemplate = opt,
_Assembly = asm,
})}).AsEnumerable();
Уже знаю, что это повторяющийся вопрос, но какое неправильное кодирование я делаю Вот. Пожалуйста, направьте меня.