Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/elixir/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 4 如何在MVC4代码优先方法中实现主明细表数据插入_Asp.net Mvc 4 - Fatal编程技术网

Asp.net mvc 4 如何在MVC4代码优先方法中实现主明细表数据插入

Asp.net mvc 4 如何在MVC4代码优先方法中实现主明细表数据插入,asp.net-mvc-4,Asp.net Mvc 4,在MVC4EF代码优先方法中,我一直在努力为客户及其联系人实现以下逻辑 客户表 public int ID { get; set; } public string Name{ get; set; } public string Address { get; set; } 客户联络表 public int CustomerID { get; set; } public string ContactName { get; set; } public string Phone

在MVC4EF代码优先方法中,我一直在努力为客户及其联系人实现以下逻辑


客户表

 public int ID { get; set; }

 public string Name{ get; set; }

 public string Address { get; set; }

客户联络表

 public int CustomerID { get; set; }

 public string ContactName { get; set; }

 public string PhoneNo { get; set; }

 public string Email { get; set; }

在这种情况下,一个客户可以获得多个带有外键引用的联系人详细信息。请任何人指导我实现这一目标。谢谢和进步.

如果我们考虑EF

中的一对多关系,你的设计应该看起来像下面这样。 客户表(假设它客户类)


您需要添加导航属性以允许您执行主/详细信息插入:

客户
类中:

public virtual ICollection<CustomerDetail> CustomerDetails{ get; set; }
public virtual Customer Customer { get; set; }
然后,要插入包含详细信息的客户:

var customer = new Customer { Name="", Address="" };
context.Customers.Add(customer);

var customerDetails = new CustomerDetails { ContactName="", Customer=customer };
context.CustomerDetails.Add(customerDetails);

context.SaveChanges();
public virtual Customer Customer { get; set; }
var customer = new Customer { Name="", Address="" };
context.Customers.Add(customer);

var customerDetails = new CustomerDetails { ContactName="", Customer=customer };
context.CustomerDetails.Add(customerDetails);

context.SaveChanges();