我的配置类似于
public class UserModel {
public User() {}
[Key, Required]
public string id { get; set; }
[ForeignKey("ContactDetails")]
public int? ContactDetailsId { get; set; }
public virtual ContactDetailsModel ContactDetails { get; set; }
[ForeignKey("NextOfKinContactDetails")]
public int? NextOfKinContactDetails { get; set; }
public virtual ContactDetailsModel NextOfKinContactDetails { get; set; }
}
public class ContactDetailsModel {
[Key, Required]
public int Id { get; set; }
public string name { get; set; }
// Address, Stuff, Blah
}
我希望每当指定的id设置为null时删除联系人详细信息。我知道我将不得不改变这一点,因为当ContactDetailsModel应该是子节点并且包含外键而UserModel是父节点时,我将UserModel作为子节点,否则级联删除将是错误的方式。
问题是,如果我确实改变了它,我似乎无法找到一种方法来允许UserDodel两次使用ContactDetailsModel。
有人有想法吗?