TableA,TableB,TableC
对于每个TableA记录,在TableB中有多个记录。对于每个TableB记录,在TableC中有多个记录。 现在我的DTOs看起来像这样:
public class TableA_DTO
{
public int tableA_rowid { get; set; }
//remaining tableA field definitions
public List<TableB_DTO> TableB_records { get; set; }
}
public class TableB_DTO
{
public int tableB_rowid { get; set; }
//remaining tableB field definitions
public List<TableC_DTO> TableC_records { get; set; }
}
public class TableC_DTO
{
public int tableC_rowid { get; set; }
//remaining tableC field definitions
}
我的LINQ查询大致如下
var qry = from ent in TableA
select ent;
在我的映射类中,我会通过以下方式循环遍历查询结果中的项目:
foreach (var dataitem in query)
{
TableA_DTO dto = new TableA_DTO();
dto.tableA_rowid = dataitem.ID;
//remaining field definitions here
}
现在这个方法适用于TableA表格中的所有字段,它从数据库中输出一个记录,并为TableA表格中的每个字段设置所需的属性。我还想在名为TableB_records的TableA属性字段中填充TableB中的所有匹配记录,以及在TableC中与TableB_DTO的属性名称为TableC_records的所有匹配记录。
这可以实现吗?我需要更改什么?是linq查询还是我的映射方式?
感谢您的时间...