BGT*_*BGT 5 c# asp.net entity-framework ef-code-first entity-framework-core
在使用实体框架核心添加外键后尝试添加迁移时,我收到上述错误。我正在添加FK
public class ApplicantDetail
{
[Key]
public int Id { get; set; }
[ForeignKey("GrantProgramFK")]
public GrantProgram GrantProgramId { get; set; }
--------
}
Run Code Online (Sandbox Code Playgroud)
这个 FK 与阶级有关
public class GrantProgram
{
[Key]
public int Id { get; set; }
-----
}
Run Code Online (Sandbox Code Playgroud)
任何帮助表示赞赏。我尝试删除该实体并再次运行迁移,但失败了。
完整错误:
无法从实体类型“EFDataAccessLibrary.Models.ApplicantDetail”中删除属性“GrantProgramId”,因为它正在“EFDataAccessLibrary.Models.ApplicantDetail”的外键 {“GrantProgramId”} 中使用。在删除属性之前,必须删除或重新定义所有包含外键的内容
我找到了一个页面, 点击这里,但这是什么意思?如何解决。
Ser*_*rge -1
您必须在迁移之前修复您的类:
public class ApplicantDetail
{
[Key]
public int Id { get; set; }
public int? GrantProgramId { get; set; }
[ForeignKey("GrantProgramId")]
[InverseProperty("ApplicantDetails")]
public GrantProgram GrantProgram{ get; set; }
--------
}
public class GrantProgram
{
[Key]
public int Id { get; set; }
[InverseProperty(nameof(ApplicantDetail.GrantProram))]
public virtual ICollection<ApplicantDetail> ApplicantDetails{ get; set; }
-----
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5795 次 |
| 最近记录: |