是否可以從EF查詢中填充列表?我的DTO如下:使用ENtity框架查詢填充DTO類List <>
public DTO()
{
public string ClientName { get; set;}
public List<string> RelatedCodes { get; set;}
}
我的填充方法DTO =
Public DTO MyResult(string ClientCode)
{
return (from o in repository.RelatedClient
where o.LeadCode == ClientCode
select new DTO { ClientName = o.ClientName, RelatedCodes = o.RelatedCodes.ToList()});
}
我知道在查詢中,或者我不應該添加ToList()我可以我很做錯誤。任何人都可以建議如何做到這一點。我的DTO在這個例子中被減少了,但是如果可能的話,我想在一個DTO中使用一個實體查詢來擁有很多單個屬性和一個列表(或者幾個列表)?
因此,下面的答案下面我假設沒有辦法查詢這個直接。我原來的選項將是:
Public DTO MyResult(string ClientCode)
{
var temp = (from o in repositry.RelatedCode Where o.LeadCode == ClientCode select o).ToList();
DTO dto = (from o in repository.LeadClient Where o.LeadCode == ClientCode Select o.ClientName).Firstordefault();
foreach(string rc in temp)
{ dto.RelatedCode.Add(rc);}
return dto;
}
我很滿意的,但將不勝感激,如果有人可以提供建議,如果這是對付沒有像automapper的正確方法。我試圖學習實體框架,並希望檢查我不缺少一些內置的功能。
的Automapper也可能會被你的新朋友從現在開始。 –
這裏是他正在談論的AutoMapper的鏈接:http://nuget.org/packages/automapper – sergserg
我現在使用Automapper來處理這些東西。這真棒 - 使用它 – Luthervd