Обновление EF5 до EF6 - нарушены навигационные свойства
Я использовал nuget для обновления EF5 до EF6, и где-то в моем решении было внесено серьезное изменение. Я обнаружил это при запуске одного из моих модульных тестов (хотя это влияет на все). В каждом тесте я начинаю, выполняя это:
// warm up EF.
using (var context = new ReportingDbContext())
{
context.Database.Initialize(false); // <-- boom!
}
// init the service
_inventoryService = new InventoryService();
Это бросает мне это исключение:
The property 'EmployeeID' cannot be configured as a navigation property. The property must be a valid entity type and the property should have a non-abstract getter and setter. For collection properties the type must implement ICollection<T> where T is a valid entity type.
Странно то, что на EF5 все было просто замечательно. Я отправился на охоту через свои модели (у меня есть куча) и нашел везде, где живет EmployeeID. Все они выглядят так:
[Table("mytablename")]
public class CSATEntity
{
[Key, DatabaseGenerated(DatabaseGeneratedOption.None)]
public int CSATID { get; set; }
// foreign keys
public int ClientID { get; set; }
public int ContactID { get; set; }
// nav props
[ForeignKey("ClientID")]
public virtual CompanyEntity CompanyEntity { get; set; }
[ForeignKey("EmployeeID")]
public virtual EmployeeEntity EmployeeEntity { get; set; }
... more props
Исключение не указывает на то, какая модель поднята, или если все они. Какой лучший способ выследить это?