joa*_*eza 5 c# asp.net-mvc entity-framework foreign-keys data-annotations
在数据库中保存一个有点复杂关系的模型时,我遇到了一些麻烦.
类定义是:
public abstract class EntityBase
{
public virtual Guid Id { get; set; }
}
public class LoanRequest : EntityBase
{
[Key,DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid Id { get; set; }
public virtual Applicant Applicant1 { get; set; }
public virtual Applicant Applicant2 { get; set; }
}
public class Applicant
{
[Key,DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid Id { get; set; }
public Guid LoanRequestId { get; set; }
[ForeignKey("LoanRequestId")]
public virtual LoanRequest LoanRequest { get; set; }
public virtual ICollection<MonthlyIncome> Incomes { get; set; }
}
public class MonthlyIncome
{
[Key,DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid Id { get; set; }
public Guid ApplicantId { get; set; }
[ForeignKey("ApplicantId")]
public virtual Applicant Applicant { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我能够运行迁移并查看数据库,框架创建的表和列对我来说似乎很好.但是,当保存异常时.例外是:
无法确定相关操作的有效排序.由于外键约束,模型要求或存储生成的值,可能存在依赖关系
我一直在寻找互联网上的解决方案,我无法看到我的问题所在.有什么建议?谢谢!
经过多次尝试,我找到了解决方案。将申请人定义更改为:
public class Applicant
{
[Key,DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public Guid Id { get; set; }
public virtual ICollection<MonthlyIncome> Incomes { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这就是我所需要的
| 归档时间: |
|
| 查看次数: |
83 次 |
| 最近记录: |