2014-01-30 2 views
0

Я работаю с существующей базой данных, где не заданы внешние ключи. Я не могу изменить базу данных, но хотел бы определить отношения в моей модели сущности. Например, таблица People имеет имена всех людей, но таблица Coaches содержит только ссылку на PeopleId. Я хотел бы определить это отношение в объекте сущности Coaches.Задать внешний ключ в Entity Framework, если он не определен в базе данных

+0

я точно так же и идти прямо, целостность обеспечивается с помощью кода, но я думаю, что Entity Framework слишком заботиться о правилах целостности вы указываете в модели – MauriDev

ответ

1

Получается, что при более тщательном тестировании не кажется, что база данных не определила внешний ключ. Я все еще могу привести информацию о связанных таблицах. Требуется дополнительное тестирование, поскольку база данных не применяется к ссылочной целостности. Однако с этим определением таблицы и определения модели, мой человек данные были введены.

[Key] 
     public int CoachID { get; set; } 
     public Nullable<int> CompanyID { get; set; } 
     public Nullable<int> SeasonID { get; set; } 
     public int PeopleID { get; set; } 
     public Nullable<int> PlayerID { get; set; } 
     public string ShirtSize { get; set; } 
     public string CoachPhone { get; set; } 
     public Nullable<System.DateTime> CreatedDate { get; set; } 
     public string CreatedUser { get; set; } 
     public virtual Person Person { get; set; } 

modelBuilder 
       .Entity<Coach>() 
       .ToTable("Coaches") 
       .HasRequired(p => p.Person) 
Смежные вопросы