0

エンティティ セット オブジェクトを使用して互いに入れ子になっている 3 つのデータセット オブジェクトがあります。このようなデータを選択しています

var newList = from s in MainTable
from a in s.SubTable1 where a.ColumnX = "value"
from b in a.Detail where b.Name = "searchValue"
select new {
    ID = s.ID,
    Company = a.CompanyName,
    Name = b.Name,
    Date = s.DueDate
    Colour = b.Colour,
    Town = a.Town
};

これは正常に機能しますが、問題は、各 Name 値の Detail object-list/table に多くのレコードがあるため、重複する行が大量に発生するため、b.Name ごとに 1 つのレコードのみを表示したいことです。入れてみました

group s by b.Name into g

選択の前ですが、これにより選択が停止し、必要な列を選択できるようになります(実際にはもっとあります)。この状況で、出力行を「フラット」形式に保ちながら group コマンドを使用するにはどうすればよいですか?

4

1 に答える 1

0

最後の質問への回答としてコメントを追加する:-もちろん、結果をグループ化すると、子の列を選択できなくなります。これは、複数の子が存在する可能性があり、合計などの集計列を指定する必要があるためです。最大 etx –</p>

于 2010-05-04T16:41:56.680 に答える