2

linqtosqlは初めてです。私はデータベーススキーマを持っています。

従業員は複数のチームに属することができ、チームは複数の従業員に属することができます。

だから実際に私は持っています、

従業員テーブル:EmpID(PK)、EmpNameなど。

EmployeesTeamテーブル:EmpID(FK)、TeamID(FK)(これら2つは複合PKを作成します)

チームテーブル:TeamID(PK)、TeamNameなど

EmployeeテーブルとTeamテーブルに行を追加しましたが、EmployeesTeamテーブルに行を追加する方法がわかりません。

4

1 に答える 1

2

EFとは異なり、LINQ-to-SQLは、テーブルの上にある直接的なレイヤーです。データコンテキストにEmployeeTeamsエントリが必要なので、それにオブジェクトを追加するだけです。

ctx.EmployeeTeams.InsertOnSubmit(
      new EmployeeTeam { Employee = emp, Team = team });

または、ナビゲーションプロパティを使用できる場合があります。

// this should alternatively be able to use the keys, instead of the objects
emp.Teams.Add(new EmployeeTeam {Employee = emp, Team = team});

EFでは、これらのブリッジテーブルを非表示にできます(つまりemp.Teams.Add(team))。ただし、LINQ-to-SQLでは、通常どおりに対処する必要があります

于 2009-07-07T07:17:41.813 に答える