У меня есть объект, называемый драйвер и получить список драйверов, звоню:Доступ к внешнему ключу в LINQ Где?
List<Driver> drivers = _context.Drivers.Select(x=>x);
Водитель может иметь детали и их внешний ключ между ними, но я не могу сделать:
List<Driver> drivers = _context.Where(x=>x.id == id && x.Detail.id == detailId);
Как я могу получить доступ к своим свойствам внешнего ключа в моем предложении Where?
Я использую Entity Framework 3.5
.
Оператор работает, хотя я не уверен (х => х) необходимо, я на самом деле не был скомпилирован:
List<Driver> drivers = _context.Drivers.Select(x=>x);
Проблема заключается в том, что Driver
предприятие имеет зарубежное отношение к Detail
, Driver
имеет столбец DetailId
, который является внешним ключом к таблице подробностей, и поскольку я использую Entity Framework 3.5, я не могу добраться до Driver.Detail.Id
или Driver.DetailId
. Они не подходят. Я прочитал что-то около EF 3.5
, не включая внешние ключи, а затем имея выбор в EF 4
, но на данный момент я нахожусь на EF 3.5
.
я стараюсь делать .Include("Detail")
, но это дало мне некоторое исключение о Detail not being a navigation property.
Я не понимаю эту проблему. Что это не позволяет вам делать? Какая ошибка дает ваш код в настоящее время? –
Что случилось со вторым статусом Linq? – haim770
Можете ли вы показать свой класс ** Driver **? –