c#linqをオブジェクトにすると、「equals-on-equals-ininto」句を使用して左外の接続を実行するのは非常に簡単です。ただし、場合によっては、Where句を使用することがより望ましい場合があります。
内部接続には、簡単な解決策があります:
ただし、左の外部接続の場合、問題は、一致するアイテムが見つからないときに右側の運用数が見つからないことです。次の試みを検討してください:
<code class="language-csharp">List<joinpair> innerFinal = (from l in lefts from r in rights where l.Key == r.Key select new JoinPair { LeftId = l.Id, RightId = r.Id});</code>
このソリューションは、「defaultifempty」メソッドを使用して、非一致する左ボタンにデフォルト値を提供し、結果の精度を確保します。
<code class="language-csharp">List<joinpair> leftFinal = (from l in lefts from r in rights select new JoinPair { LeftId = l.Id, RightId = ((l.Key==r.Key) ? r.Id : 0 });</code>
この復活した出力は、元の画像を維持し、説明を明確にして、意味を変えることで単語の選択をします
以上が「Join-on-Equals-into」条項を使用せずにLINQで左外の結合を実行する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。