あなたの質問の抜粋にデータの完全な構造や最初のfrom
または最後のselect
句が表示されないため、私があなたの意思を表明できない場合は、私には寛容です。だから私はあなたのスニペットとサンプルデータに基づいて解決策だと思うものを投稿しています。私がオフになっている場合は私に教えてください、私はそれを修正します。あなたは、独自のライン上のPODにそれぞれ委託してのPODへの委託の行のリストを、必要な場合
は、あなたがこのような何か行うことができます(心に留めておくと、私のfrom
とselect
句私のサンプルデータに基づいています):
// select the consignment id & name (i made up) and each matching POD
var results = from c in consignments
join p in dc.PODs on c.ID equals p.Consignment into pg
from pgg in pg.DefaultIfEmpty()
select new { ID = c.ID, Name = c.Name, POD = pgg };
// This is just a SAMPLE display just for kicks and grins
foreach (var r in results)
{
Console.WriteLine(r.Name + " " + ((r.POD != null)
? (r.POD.Consignment + " " + r.POD.Description)
: "none"));
}
このクエリのようなものを出力:私はあなたの発言を理解し、非常にわからないんだけど、しかし
One 1 TextBox
Two none
Three 3 Refridgerator
Three 3 Bucket
Four none
Five none
を:
あなたはどこ各結果の行ごとの購入につき1つの委託を表示したくないと言っている場合
を「問題は、私は 重複主要行を取得していますされて」私はわからないんだけど
// select the Consignment ID and Name (i made up), and list of PODs
// instead of the individual POD
var results = from c in consignments
join p in dc.PODs on c.ID equals p.Consignment into pg
select new { ID = c.ID, Name = c.Name, PODs = pg };
// This is just a SAMPLE display just for kicks and grins
foreach (var r in results)
{
Console.WriteLine(r.Name + " ");
if (r.PODs.Count() > 0)
{
foreach (var pod in r.PODs)
{
Console.WriteLine("\t" + pod.Consignment + " " + pod.Description);
}
}
else
{
Console.WriteLine("\tNone");
}
}
選択は、PODリストの代わりに、次のように出力し、個々の試合、選択され
:
を
IEnumerable
が委託とのPODの配列との項目で、次のようなクエリをしたいと思います
One
1 TextBox
Two
None
Three
3 Refridgerator
3 Bucket
Four
None
Five
None
を持っている場合は、完全なクエリを表示することができ、共有を行います。 – msarchet
申し訳ありませんが、現時点で私はインターネットにアクセスできないマシンで作業しています。私は5分持っているときにタイプアップします:) – Chris
インターネットにアクセスできない? 2番目を管理しないだろう –