テーブルから多数の「マスター」行を選択し、結果ごとに別のテーブルから多数の詳細行を返す必要があります。複数のクエリを使用せずにこれを達成する良い方法は何ですか (マスター行用に 1 つと、詳細行を取得するための結果ごとに 1 つ)。
たとえば、次のようなデータベース構造を使用します。
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;
}
}