public class Purchase {
public Address to { get; set; }
public Address from { get; set; }
}
public class Address {
public string name { get; set; }
}
我有1个购买地址。这应该如何在数据库(mySql)上,包括在Entity Framework上使用的外键。
我遇到的问题是实体理解(基于fk)地址中的导航性是1到多(*)而且我没有购买地址列表,我已经定义了2。
谢谢, 巴特。
答案 0 :(得分:1)
您可以配置表格的关系。像这样建立模型,
public class PurchaseConfiguration : EntityTypeConfiguration<Purchase >
{
public PurchaseConfiguration()
{
HasRequired(p=>p.to ).WithOptionalDependent().WillCascadeOnDelete(false);
HasRequired(p => p.from ).WithOptionalDependent().WillCascadeOnDelete(false);
}
}
和你的数据库上下文你可以添加像这样的配置,
public class yourDbContext:DbContext
{
public DbSet<Purchase> Purchases{ get; set; }
public DbSet<Address> Addresses{ get; set; }
//other db sets here..
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Configurations.Add(new PurchaseConfiguration ());
// you can add configurations for other tables
}
}