Entity Framework, синтаксис одат - PullRequest
       32

Entity Framework, синтаксис одат

0 голосов
/ 24 февраля 2012

Как указано на изображении Entity Framework ниже, у меня есть 3 таблицы, tblModel, tblModelFetish и tblFetish. Запись в tblModel может иметь несколько записей в таблице tblModelFetish, связанных столбцом modelid. Таблица tblModelFetish связывается с таблицей tblFetish через столбец fetishID, чтобы получить описание фетиша, хранящееся в столбце фетиша. Эта модель сущности была сгенерирована с VS 2010 из существующей базы данных, включающей внешние ключи.

Модель данных объекта http://spreadthenudes.com/efmodel.jpg

Используя синтаксис odata, я могу получить доступ ко всем моделям (http://localhost:51157/WcfDataService.svc/tblModels) или конкретной модели (http://localhost:51157/WcfDataService.svc/tblModels(11))) успешно. У меня проблемы с доступом к данным связанных таблиц через odata, я пробовал много перестановок, включая расширение и т. д.

Мне нужен набор результатов всех столбцов в tblModel и связанных записей tblFetish, включая столбец фетиша из таблицы tblFetish. Другими словами, у Мэри (имя модели в tableModel) есть 3 фетиша (3 записи в tblModelFetish) с именем beach, travel и coffee (хранятся в tblFetish, столбец fetish).

Каков синтаксис одат для его получения?

спасибо за чтение! Боб

1 Ответ

0 голосов
/ 24 февраля 2012

Попробуйте либо:

http://localhost:51157/WcfDataService.svc/tblModels(11)?$expand=tblModelFetishes/tblFetish

, либо

http://localhost:51157/WcfDataService.svc/tblModels?$filter=id eq 11&$expand=tblModelFetishes/tblFetish

Просто чтобы прояснить, вы не получите один огромный результирующий набор со всеми столбцами, но граф сущностей состоит из ваших сущностей.

...