Вот подстава пример:Как использовать свойство навигации Entity Framework с MySqlConnector, если некоторые из клавиш навигации имеют значение NULL?
public class Car
{
public int CarId { get; set; }
public int? PreviousOwnerId { get; set; }
public PreviousOwner PreviousOwner { get; set; }
}
public PreviousOwner
{
public int PreviousOwnerId { get; set; }
public string Name { get; set; }
}
, а затем запрос:
var cars = db.Cars.Where(c => c.PreviousOwner.Name = "Stack").ToList();
Однако я получаю сообщение об ошибке, потому что некоторые автомобили имеют нулевое PreviousOwnerId
. Внутреннее исключение составляет "Unknown column 'Extent1.PreviousOwnerId' in 'where clause'"
.
Примечание: Это используется разъем .net MySQL
Я добавил это к моему onmodelcreating: 'MODELBUILDER. Объект() .HasOptional (c => c.PreviousOwner); 'и по-прежнему имеет ту же ошибку. –
Такая же ошибка с сделанным вами изменением. Возможно, это потому, что это строго от 1 до 1 (а не от 1 до многих). –
@travisj взгляните на свою фактическую базу данных. Я представляю, что FK будет выглядеть примерно так: PreviousOwner_PreviousOwnerId, если это так, переименуйте его в PreviousOwnerId или восстановите/перенесите свою базу данных. –