该物业';部门ID';无法配置为导航属性
本文关键字:配置 属性 导航 部门 ID | 更新日期: 2023-09-27 18:16:58
指定类别
public class Designation
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Key]
public int id { get; set; }
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[ForeignKey("DepartmentID")]
public int DepartmentID { get; set; }
public bool IsActive { get; set; }
public string AddedBy { get; set; }
public DateTime AddedDate { get; set; }
public string UpdateBy { get; set; }
public DateTime UpdateDate { get; set; }
public virtual Department Department { get; set; }
}
部门类别
public class Department
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Key]
public int DepartmentID { get; set; }
public string DepartmentName { get; set; }
public bool IsActive { get; set; }
public string AddedBy { get; set; }
public DateTime AddedDate { get; set; }
public string UpdateBy { get; set; }
public DateTime UpdateDate { get; set; }
public virtual ICollection<Designation> Designations { get; set; }
}
EmployeeInfo类
public class EmployeeInfo
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Key]
public int EmployeeID { get; set; }
public int DepartmentID { get; set; }
[ForeignKey("DepartmentID")]
public virtual Department Department { get; set; }
[Required(ErrorMessage = "Employee Name is Required"), Display(Name = "Name")]
public string EmployeeName { get; set; }
[Required(ErrorMessage = "Employee Bangla Name is Required"), Display(Name = "Bangla Name")]
public string EmployeeBanglaName { get; set; }
[Required(ErrorMessage = "Department Name is Required")]
public string Department { get; set; }
[Required(ErrorMessage = "Designation is Required")]
public string Designation { get; set; }
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
public DateTime JoiningDate{ get; set; }
[DataType(DataType.Date)]
[DisplayFormat(DataFormatString = "{0:yyyy-MM-dd}", ApplyFormatInEditMode = true)]
public DateTime DateOfBirth { get; set; }
[Required(ErrorMessage = "BloodGroup is Required"), Display(Name = "Blood Group")]
public string BloodGroup { get; set; }
[Required(ErrorMessage = "Gender is Required")]
public gender Gender { get; set; }
[Required(ErrorMessage = "Father Name is Required"), Display(Name = "Father Name")]
public string FatherName { get; set; }
[Required(ErrorMessage = "Mother Name is Required"), Display(Name = "Mother Name")]
public string MotherName { get; set; }
[Required(ErrorMessage = "Husband/Wife Name is Required"), Display(Name = "Spouse Name")]
public string SpouseName { get; set; }
public string ChildrenNumber { get; set; }
public string CardNumber { get; set; }
[Required(ErrorMessage = "Contact No is Required"), DataType(DataType.PhoneNumber)]
public string ContactNo { get; set; }
[Required(ErrorMessage = "Email is Required"), DataType(DataType.EmailAddress), StringLength(200)]
public string Email { get; set; }
[Required(ErrorMessage = "HomeContactNo is Required"),DataType(DataType.PhoneNumber)]
public string HomeContactNo { get; set; }
[Required(ErrorMessage = "District Name is Required")]
public string District { get; set; }
[Required(ErrorMessage = "Thana is Required")]
public string Thana { get; set; }
[Required(ErrorMessage = "Village Name is Required")]
public string Vill { get; set; }
[Required(ErrorMessage = "Post Code is Required")]
public string PostCode { get; set; }
public string Image { get; set; }
public byte[] picture { get; set; }
public bool IsActive { get; set; }
public string AddedBy { get; set; }
public DateTime AddedDate { get; set; }
public string UpdateBy { get; set; }
public DateTime UpdateDate { get; set; }
}
gender枚举
public enum gender
{
Male,
Female,enter code here
Other
}
在public virtual Department Department { get; set; }
属性上使用[ForeignKey("DepartmentID")]
,而不是DepartmentID
属性。因此CCD_ 4将被识别为用于关联的CCD_。
即使您不需要设置ForeignKey属性,因为您已经将DepartmentID
名称设置为与Department关联的对象属性相同,默认情况下,EF将DepartmentID
设置为外键。
看到下面的代码,你会有一个清晰的画面。
public class Designation
{
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
[Key]
public int id { get; set; }
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int DepartmentID { get; set; }
public bool IsActive { get; set; }
public string AddedBy { get; set; }
public DateTime AddedDate { get; set; }
public string UpdateBy { get; set; }
public DateTime UpdateDate { get; set; }
[ForeignKey("DepartmentID")]
public virtual Department Department { get; set; }
}