这是我的模型:
public class Investment : FullAuditedEntity<Guid>
{
public string some_property { get; set; }
public Address Address { get; set; }
}
public class Address : ValueObject<Address>
{
[ForeignKey("CountryId")]
public Country Country { get; set; }
[Required]
public int CountryId { get; set; }
[ForeignKey("StateId")]
public State State { get; set; }
public string StateId { get; set; }
[ForeignKey("DistrictId")]
public District District { get; set; }
public string DistrictId { get; set; }
[ForeignKey("CommuneId")]
public Commune Commune { get; set; }
public string CommuneId { get; set; }
[Required]
public string City { get; set; }
public string Street { get; set; }
}
当我尝试创建新投资并保存到数据库时,ABP 尝试确定是否应将实体更改存储在历史表中,但在尝试识别拥有实体(地址)的所有者(投资)时崩溃。这是因为 ABP 总是采用第一个外键(假设它与所有者实体的关系),但在我的情况下,第一个外键是与其他实体的关系,因此没有“PrincipalToDependent”值并且保存操作被终止:
是否有任何解决方法,或者我们不能将引用存储在拥有的实体类型中?