public class Requisitions
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int JobID { get; set; }
[Required]
public string JobNumber { get; set; }
[Required]
public string Username { get; set; }
[Required]
public string Department { get; set; }
[Required]
public string Details { get; set; }
[Required]
public DateTime DateOfComplaint { get; set; }
[Required]
public string Period { get; set; }
[Required]
public DateTime EndDate { get; set; }
}
public class Requisitions_Sections
{
public Requisitions Requisitions { get; set; }
[ForeignKey("Requisitions")]
public int JobIDFK { get; set; }
[Required]
public string Section { get; set; }
}
我正在尝试将此外键映射到 requisition_sections 类,但出现此错误 The entity type 'Requisitions_Sections' requires a primary key to be defined. If you intended to use a keyless entity type, call 'HasNoKey' in 'OnModelCreating'. For more information on keyless entity types,
我为此创建了单独的类。
在 mysql JobIDFK 和 section 中都应该是主键我不知道如何在 SQL Server 中做到这一点,这有一对多的关系,一个 jobID 有很多节。
感谢任何帮助。
答案 0 :(得分:0)
该错误是由于模型“Requisitions_Sections”未定义任何键属性。但是,如果您想跟踪更改,建议为模型定义键< /strong>
如果您的模型不需要任何密钥,您可以使用 [keyless] 数据注释或 .HasNoKey() 方法调用
[KeyLess]
public class Requisitions_Sections
{
public Requisitions Requisitions { get; set; }
[ForeignKey("Requisitions")]
public int JobIDFK { get; set; }
[Required]
public string Section { get; set; }
}
以下是使用无键实体类型的一些特征