Устранение неполадок ADO.NET Entity Framework и отношений 1: * - PullRequest
3 голосов
/ 30 апреля 2009

Я пытаюсь выполнить простую задачу создания базы данных с 2 таблицами с отношением 1: *.

В одной таблице (Foos) у меня есть

Id
...
...

В другой (Бары) у меня есть

Id
FooId
...
...
...

Я создал отношение внешнего ключа от Bars к Foos, где таблица внешних ключей - это Bars, указывающая на столбец FooId, а таблица первичного ключа - Foos, указывающая на столбец Id.

Затем я создал свою модель данных ADO.NET Entity, и она правильно выбрала таблицы Foos и Bars и взаимосвязь и создала свойства навигации.

Теперь из моего приложения MVC я пытаюсь получить Foo, подобный этому:

var foo = (from f in _db.Foos where f.Id == id select f).FirstOrDefault();

Затем я пытаюсь получить доступ к свойству Bars объекта foo и не получаю результатов. Однако, если я проверяю набор _db.Bars, я вижу столбцы с правильным идентификатором FooId.

Что я должен сделать, чтобы выяснить, почему отношения не работают? Я посмотрел на многие учебные пособия и документацию в MSDN для табличных отношений, но, очевидно, нет ничего плохого.

Я пытаюсь использовать это в приложении ASP.NET MVC на случай, если это уместно.

1 Ответ

4 голосов
/ 30 апреля 2009

использовать включение в таблице Foos

var foo = (из f в _db.Foos.Include ("Bars"), где f.Id == id select f) .FirstOrDefault ();

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...