C# 插入、删除、更新(多对多关系)
在中描述了关于多对多数据关系的关系 现在如何在C# 插入、删除、更新(多对多关系),c#,entity-framework,entity-framework-4,ado.net,ef-code-first,C#,Entity Framework,Entity Framework 4,Ado.net,Ef Code First,在中描述了关于多对多数据关系的关系 现在如何在CourseInstructo上执行插入、删除和更新 对于一对一的关系,我这样做: var context= new Modle2(); var course= new Course() {title="math",...}; context.Course.addObject(course); context.SaveChanges() 您可以在任意一端使用导航属性来操纵多对多关系。 比如说, using (var context = new M
CourseInstructo
上执行插入、删除和更新
对于一对一的关系,我这样做:
var context= new Modle2();
var course= new Course() {title="math",...};
context.Course.addObject(course);
context.SaveChanges()
您可以在任意一端使用导航属性来操纵多对多关系。 比如说,
using (var context = new Model2())
{
int courseID = 4022;
var course = (from c in context.Courses
where c.CourseID == courseID
select c).First();
int personID = 17;
var instructor = (from p in context.Person
where p.PersonID == personID
select p).First();
course.Person.Add(instructor);
// alternatively, this will also do - instructor.Course.Add(course);
context.SaveChanges();
}
using (var context = new Model2())
{
int courseID = 4022;
var course = (from c in context.Courses
where c.CourseID == courseID
select c).First();
int personID = 17;
var instructor = (from p in context.Person
where p.PersonID == personID
select p).First();
course.Person.Remove(instructor);
context.SaveChanges();
}
要删除,请使用类似的逻辑-例如
using (var context = new Model2())
{
int courseID = 4022;
var course = (from c in context.Courses
where c.CourseID == courseID
select c).First();
int personID = 17;
var instructor = (from p in context.Person
where p.PersonID == personID
select p).First();
course.Person.Add(instructor);
// alternatively, this will also do - instructor.Course.Add(course);
context.SaveChanges();
}
using (var context = new Model2())
{
int courseID = 4022;
var course = (from c in context.Courses
where c.CourseID == courseID
select c).First();
int personID = 17;
var instructor = (from p in context.Person
where p.PersonID == personID
select p).First();
course.Person.Remove(instructor);
context.SaveChanges();
}
更新对多对多关系没有意义-它本质上是添加和删除组合。@MaEb,您是否遇到编译时错误或运行时异常。或者只是代码运行时没有错误,但什么也没有发生。在这两种情况下,请尝试发布相关代码。