我需要从一个表中选择一些“主”行,同时为每个结果返回另一个表中的一些详细信息行。什么是在没有多个查询的情况下实现此目的的好方法(一个用于主行,一个用于获取详细行的结果)。
例如,具有如下数据库结构:
MasterTable:
- MasterId BIGINT
- Name NVARCHAR(100)
DetailTable:
- DetailId BIGINT
- MasterId BIGINT
- Amount MONEY
我将如何最有效地填充data
下面的对象?
IList<MasterDetail> data;
public class Master
{
private readonly List<Detail> _details = new List<Detail>();
public long MasterId
{
get; set;
}
public string Name
{
get; set;
}
public IList<Detail> Details
{
get
{
return _details;
}
}
}
public class Detail
{
public long DetailId
{
get; set;
}
public decimal Amount
{
get; set;
}
}