4
Employee
id, name, datejoin, deptID

そして別のテーブルは

Marketing 
id, name, deptID

私がやろうとしているのは、Marketing の Employee テーブルから deptID を検索して存在するかどうかを確認することです。存在しない場合は、Employee テーブルから Marketing テーブルに名前と deptID を追加します。基本的には左外部結合だと思います。

私がやろうとしているのは、ラムダ式とEFを使用することです。私はこの分野に慣れていないので、それを達成する方法を考えていました。ラムダ式を理解するために必要なエンティティを作成しました

tTlEntities sde = new tTlEntities();
sde.t_Marketing.Where(x=>x.deptID == t_Employee.deptID).

それが私がどこまで行ったか、外部結合が必要であることを知っています。助けてください

4

3 に答える 3

7

これは、従業員のマーケティングへの左外部結合と、従業員の null マーケティング結果のチェックで行うことができます。または、LINQ to Entities で次のように存在しないを使用することもできます。

tTlEntities sde = new tTlEntities();
var employeeQuery = sde.t_Employee.Where(
                     e=> !sde.t_Marketing.Any(m => m.deptID == e.deptID));
于 2013-05-23T11:29:00.147 に答える
4

navigation propertyがある場合nullable foreign key id、EF はleft outer join自動的に を作成します。nullable でない場合、結果はinner join. 結合を明示的に記述する必要はありません。Includeを持つナビゲーションプロパティで拡張メソッドを使用するだけnullable foreign key idです。

于 2013-11-12T10:42:56.287 に答える