我的情况是用户可以拥有多个地址.因此,我的用户类上有一个ICollection.但我也希望用户能够选择默认地址.所以我做了以下事情:
public class User
{
public int Id { get; set; }
public int? DefaultAddressId { get; set; }
[ForeignKey("DefaultAddressId")]
public virtual Address DefaultAddress { get; set; }
public virtual ICollection<Address> Addresses { get; set; }
//properties were removed for purpose of this post
}
Run Code Online (Sandbox Code Playgroud)
我想public virtual Address DefaultAddress { get; set; }完全删除,保留DefaultAddressId并使用Fluent API映射它,因为当前的设置导致了很多麻烦(在这个和其他我有类似设置的类中).那么可以使用流畅的api来完成吗?
更新: 地址类当前没有对User类的任何引用,它是一个单向关系.但是,是的,一个地址只属于一个用户,它不是一个多对多的关系.这是地址类:
public class Address
{
public int Id { get; set; }
public string Name { get; set; }
public string Details { …Run Code Online (Sandbox Code Playgroud) entity-framework fluent-interface ef-code-first entity-framework-4.1