2017-09-14 29 views
1

我有两个POCO类为
员工外键的属性并不想在一个用许多关系EF 6

public class Employee 
{ 
    public Employee() 
    { 
    Departments = new HashSet<Department>(); 
    } 

[DatabaseGenerated(DatabaseGeneratedOption.None)] 
public int EmployeeId { get; set; } 

public String EmployeeName { get; set; } 

public int DeptId { get; set; } 

[ForeignKey("DeptId")] 
public ICollection<Department> Departments { get; set; } 

} 

Department类

public class Department 
    {  
     [DatabaseGenerated(DatabaseGeneratedOption.None)] 
     public int DepartmentId { get; set; } 
     public String Name { get; set; } 
     public ICollection<Employee> Employees { get; set; } 
    } 

时有效,我想命名除了缺省的EF命名约定外,Emp-Department中的外键还有很多关系。所以我使用Employee中的ForeignKey属性。但我得到异常对Employee型物业部门

外键属性不 有效

帮我找出命名外键的方式。

回答

1

如果员工有一个指向部门的外键属性,则员工不能有多个部门。因此,将导航属性更改为:

[ForeignKey("DeptId")] 
public virtual Department Department { get; set; } 
相关问题