[英]DTO Mapping using AutoMapper
我有3個表tableA,tableB和tableC,其中tableB具有來自tableA的外鍵,而tableC具有來自tableB的外鍵,並且與tableD類似。
我有一個linq查詢,我正在獲取數據為:
var temp = await dbContext.tableA.Include(p=>p.tableB.Select(q=>q.tableC).Select(s=>s.tableD)).ToListAsync();
我在這里獲得適當的數據,但是當我將其映射到DTO時,如下所示:
{
List<DTOtableA> dtotest = new List<DTOTableA>();
//From DB
var list = _repo.GetData();
dtotest = list.Select(p=>Mapper.Map(p,new DTOTableA())).ToList();
}
即使DTOTableA在其類中引用了DTOTableB,並且DTOTableB也引用了DTOTableC,在dtoTest中僅填充了tableA的數據。
有什么解決辦法嗎?
我認為,您不需要映射器。 您可以這樣使用:
List <DTOtableA> dtotest =等待dbContext.tableA.Include(p => p.tableB.Select(q => q.tableC).Select(s => s.tableD))。ToListAsync();
dtotest [0] .tableB.attributeOfTableB
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.