日期:2014-05-20  浏览次数:20790 次

Entity Framework多对多插入遇到的一个棘手问题!!!
数据库类图:


生成的模型图:



执行代码:[code=C#][/code]
private static void TestOrder()
  {
  using (var edm = new TestDBEntities())
  {
  Product p = new Product();
  p.pId = 5;
  p.pName = "商品";

  Order order = new Order();
  order.OrderName = "hunaifei";
  order.Product.Add(p);
  order.Product.Add(p);
  //order.Product = null;
  edm.AddToOrder(order);
  int result = edm.SaveChanges();
   
  if (result > 1)
  {
  Console.WriteLine("保存成功!");
  }
  else
  {
  Console.WriteLine("保存失败!");
  }
  Console.ReadLine();
  }
  }
问题:执行代码插入时,会自动向Order、Product及关系表OrderProduct表中都插入数据,但实际中,Product表中有的我就不需要插入了,我只需要向Order、OrderProduct插入数据即可,这个应该怎么实现?

------解决方案--------------------
探讨


问题:执行代码插入时,会自动向Order、Product及关系表OrderProduct表中都插入数据,但实际中,Product表中有的我就不需要插入了,我只需要向Order、OrderProduct插入数据即可,这个应该怎么实现?