2013-09-13 2 views
0

Нужна помощь в выборе 3 связанных данных в базе данных в одном запросе. Результат должен быть скопирован в мою модель. Byt я не могу найти, как написать запрос.Выберите несколько таблиц в соответствующей базе данных в vb

У меня так:

Dim l = db.myEntity.Where(Function(m) m.regnr.Contains(regnr) And m.ExtLok = True).Select(Function(m) m.Customer).tolist() 

Этот запрос выбрать только один-к-о связанных таблиц «Клиент», поэтому мой вопрос, как я выбрать несколько таблиц? Ive пытался это

Dim l = db.myEntity.Where(Function(m) m.regnr.Contains(regnr) And m.ExtLok = True).Select(Function(m) m.Customer, m.Cars).tolist() 

ответ

0
Dim item As myEntity = (from e in db.MyEntities.Include("MoreEntities").Include("OtherEntity") where m.field.contains("criteria") select e) 

Ключ здесь называет Include метод на коллекции в пункте In.

Взгляните на MSDN или Intelisense - Include() имеет несколько перегрузок.

+0

Я пробовал ваше решение, но не пошел. Скажем, у меня три таблицы, таблица1, таблица2, таблица3. Таблица 3 имеет навигационную клавишу для обеих таблиц1 и таблицы2 в модели. Итак, я попробовал «Dim item as myEntity = (от e в db.table3.include (« NavKey1 »). Include (« Navkey2 »), где field.contains (критерии) выбирают e) .Tolist() Это не выбирает ничего, и никаких ошибок. – mike

+0

Вы уверены, что предложение 'Where' верное? Также вы объявили' item' как исключительную «myEntity», но вы пытаетесь присвоить ему «List (Of myEntity)». –

+0

Да, я знаю, что предложение «Где» верно, потому что «элемент» содержит правильное количество значений. Проблема заключается в том, что «выбор» или «включение» не работает. Нет данных из включенных таблиц в'list (myEntity) ' – mike

Смежные вопросы