首页 文章

Code First Fluent API - 重命名不在模型中的AutoGenerated ForeignKeyID Db列

提问于
浏览
0

我遵循了Code First TPT继承的教程:http://weblogs.asp.net/manavi/archive/2010/12/28/inheritance-mapping-strategies-with-entity-framework-code-first-ctp5-part-2-table-per-type-tpt.aspx

用户模型包含对BillingDetail的单向导航 . CodeFirst命名列“BillingDetail_BillingDetailId”我想使用Fluent API重命名列“BillingDetailId” . 这是怎么做到的?这是用户模型 .

public class User
{
    public int UserId { get; set; }
    public string FirstName { get; set; }
    public string LastName { get; set; }
    public virtual BillingDetail BillingDetail { get; set; }
}

谢谢

2 回答

  • 0

    你需要在User对象上使用BillingDetailId属性,然后通过流畅的API来实现

    protected override void OnModelCreating(DbModelBuilder builder)
    {
        builder.Entity<User>()
             .Property(u => u.BillingDetailId)
             .HasColumnName("BillingDetailId ");
    }
    
  • 0

    因为您将“BillingDetail”作为属性...从此属性中提取的内容将具有ColumnName为“BillingDetailId”

    protected override void OnModelCreating(DbModelBuilder builder)
    {
         builder.Entity<User>().Property(u => u.BillingDetail).HasColumnName("BillingDetailId");
    }
    

相关问题