2009-07-07 75 views
2

我是linqtosql的新手。 我有一個數據庫模式,其中,如何在具有多對多關係的表中插入行linqtosql

員工可以屬於多個團隊,團隊可以屬於多個員工。

所以其實我有一個,

Employee表:的EmpID(PK),EmpName等。

EmployeesTeam表:的EmpID(FK),TeamID(FK)(這兩種製造複合PK)

團隊表:TeamID(PK),TeamName等

我說行員工和團隊表,但我不知道我怎麼可以添加行到EmployeesTeam表。

回答

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到SQL,你必須處理它們通常

+0

第一種方法作品。 在我的班級沒有直接鏈接到團隊表, 所以我不能使用 emp.Teams.Add(新員工隊伍{Employee = emp,Team = team}); – San 2009-07-07 07:31:54

相關問題