我是linqtosql的新手。 我有一个数据库模式,其中,如何在具有多对多关系的表中插入行linqtosql
员工可以属于多个团队,团队可以属于多个员工。
所以其实我有一个,
Employee表:的EmpID(PK),EmpName等。
EmployeesTeam表:的EmpID(FK),TeamID(FK)(这两种制造复合PK)
团队表:TeamID(PK),TeamName等
我说行员工和团队表,但我不知道我怎么可以添加行到EmployeesTeam表。
我是linqtosql的新手。 我有一个数据库模式,其中,如何在具有多对多关系的表中插入行linqtosql
员工可以属于多个团队,团队可以属于多个员工。
所以其实我有一个,
Employee表:的EmpID(PK),EmpName等。
EmployeesTeam表:的EmpID(FK),TeamID(FK)(这两种制造复合PK)
团队表:TeamID(PK),TeamName等
我说行员工和团队表,但我不知道我怎么可以添加行到EmployeesTeam表。
与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,你必须处理它们通常
第一种方法作品。 在我的班级没有直接链接到团队表, 所以我不能使用 emp.Teams.Add(新员工队伍{Employee = emp,Team = team}); – San 2009-07-07 07:31:54