Code First Fluent API - переименовывает автоматически созданный столбец ForeignKeyID Db, которого нет в модели - PullRequest
0 голосов
/ 22 сентября 2011

Я следовал учебному руководству для Code First TPT Inheritance: 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

Модель User содержит однонаправленную навигацию к BillingDetail.CodeFirst называет столбец «BillingDetail_BillingDetailId». Я хотел бы переименовать столбец «BillingDetailId» с помощью Fluent API.Как это сделать?Вот модель пользователя.

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 голосов
/ 21 сентября 2018

Поскольку у вас есть "BillingDetail" в качестве атрибутов ... то, что вы извлекаете из этого атрибута, будет иметь ColumnName "BillingDetailId"

protected override void OnModelCreating(DbModelBuilder builder)
{
     builder.Entity<User>().Property(u => u.BillingDetail).HasColumnName("BillingDetailId");
}
0 голосов
/ 03 февраля 2012

Вам потребуется свойство BillingDetailId для объекта User, а затем через свободный API вы можете

protected override void OnModelCreating(DbModelBuilder builder)
{
    builder.Entity<User>()
         .Property(u => u.BillingDetailId)
         .HasColumnName("BillingDetailId ");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...