Мы обновляем нашу базу данных первой, и есть 3 таблицы:Как Entity Framework (6.1.3) называют ICollections?
Zoo_Keeper
Zoo_Mammal
Zoo_Reptile
(имена изменены для простоты!)
хранитель может иметь много млекопитающих.
У Хранителя может быть много Рептилий.
Внешний ключ на Zoo_Mammal ссылки на Zoo_Keeper.
Внешний ключ на Zoo_Reptile ссылки на Zoo_Keeper.
В EntityFramework мы используем «Model Update из базы данных» функциональность и наш Zoo_Keeper автогенерируемая класс выглядит следующим образом:
namespace ZooApp.DataAccess.EntityDataModels
{
using System;
using System.Collections.Generic;
public partial class Zoo_Keeper
{
public Zoo_Keeper()
{
this.Mammals = new HashSet<Zoo_Mammal>();
this.Zoo_Reptile = new HashSet<Zoo_Reptile>();
}
//some properties
public virtual ICollection<Zoo_Mammal> Mammals { get; set; }
public virtual ICollection<Zoo_Reptile> Zoo_Reptile { get; set; }
}
}
Как EF придумали имена для ICollections? (Млекопитающие, Zoo_Reptile)
Мы смущены тем, почему один разделил префикс «Зоопарк», а другой - нет. Что такое наша база данных, которая заставляет EF называть отношения по-разному?
Мы проверили имена FK, но они оба выглядят последователен:
FK_Zoo_Mammal_Zoo_Keeper
FK_Zoo_Reptile_Zoo_Keeper
Каковы имена столбцов в таблицах? –
KeeperID, MammalID, ReptileID (PKs), KeeperID, KeeperID (FKs) – FBryant87