如何使用C#mvc entityframwork将值插入forignkey列
我有一个员工薪资表,主键是SSID。因此我创建了另一个表,员工信息SSID将是该表上的外键。现在的问题是,我想将该值插入到Employee information表中 问题是如何使用MVC在Forignkey列中插入值,或者如何将主键值引入外键如何使用C#mvc entityframwork将值插入forignkey列,c#,asp.net-mvc,entity-framework,C#,Asp.net Mvc,Entity Framework,我有一个员工薪资表,主键是SSID。因此我创建了另一个表,员工信息SSID将是该表上的外键。现在的问题是,我想将该值插入到Employee information表中 问题是如何使用MVC在Forignkey列中插入值,或者如何将主键值引入外键 我是新来的。我在做积垢手术。我需要加入到桌子上。因为我使用的是实体框架和angular js,所以我们如何编写代码MVC controller和view。请在这两个表之间建立关联 [Table("EmployeeSalary")] public clas
我是新来的。我在做积垢手术。我需要加入到桌子上。因为我使用的是实体框架和angular js,所以我们如何编写代码MVC controller和view。请在这两个表之间建立关联
[Table("EmployeeSalary")]
public class EmployeeSalary
{
public EmployeeSalary()
{
EmployeeInfo = new HashSet<EmployeeInfo>();
}
[Key]
public Int16 SSID { get; set; }
….
public virtual ICollection<EmployeeInfo> EmployeeInfo { get; set; }
}
public class EmployeeInfo
{
public Int16 SSID { get; set; }
….
[ForeignKey("SSID")]
public virtual EmployeeSalary EmployeeSalary { get; set; } }
[表格(“员工工资”)]
公营雇员薪金
{
公共雇员薪金()
{
EmployeeInfo=newhashset();
}
[关键]
公共Int16 SSID{get;set;}
….
公共虚拟ICollection EmployeeInfo{get;set;}
}
公共类EmployeeInfo
{
公共Int16 SSID{get;set;}
….
[外键(“SSID”)]
公共虚拟员工工资员工工资{get;set;}
如果我理解正确,员工信息可能包含许多员工工资,因此您的模型应该是这样的
public class EmployeeInformation{
public int EmployeeInformationId {get;set;}
public virtual List<EmployeeSalary> EmployeeSalaries {get;set;}
}
public class EmployeeSalary{
public int EmployeeSalaryId {get;set;}
public int EmployeeInformationId {get;set;}
[ForeignKey("EmployeeInformationId")]
public virtual EmployeeInformation EmployeeInformation {get;set;}
}
在上面的示例中,我使用了操作名称“AddSalary”,控制器中应该有一个AddSalary方法来处理此请求。所以在你的雇员信息控制器中你应该有
public class EmployeeInformationController:Controller
{
...
public ActionResult AddSalary(int eId)
{
new EmployeeSalary es = new EmployeeSalary();
es.EmployeeInformationId = eId;
return View(es);
}
}
您的AddSalary视图应该使用EmployeeSalary模型,然后使用上面的控制器操作示例,它将使用通过url传递的Id自动填充员工信息Id。您是否重新检查了实体框架文档?我确定你需要在那里设置的信息。我查过了,但我找不到我已经查过的信息。不适合我…你知道吗
public class EmployeeInformationController:Controller
{
...
public ActionResult AddSalary(int eId)
{
new EmployeeSalary es = new EmployeeSalary();
es.EmployeeInformationId = eId;
return View(es);
}
}