LINQ-SQL запрос нескольких таблиц с использованием анонимных типов - PullRequest
0 голосов
/ 02 августа 2011

Я использую ASP.NET MVC + LINQ-to-SQL с использованием .NET 4.0.

У меня есть запрос, подобный следующему:

var labels = (from c in db.Customers
join o in db.Orders
on c.CustID equals o.CustID
select o).Distinct();

Могу ли я сделать то же самое санонимный запрос, что-то вроде этого

Customers.Select(x => x.Orders) ??

Как мне это сделать, если глубина моего запроса составляет 3 или 4 таблицы?

1 Ответ

0 голосов
/ 02 августа 2011

Ваш запрос более или менее эквивалентен этому:

var labels = db.Customers
    .Join(db.Orders, c => c.CustID, o => o.CustId, (c, o) => o)
    .Distinct();

К вашему сведению, он может проходить под разными именамиСинтаксис "лямбда" является распространенным.«Свободный» синтаксис другой.В этом нет ничего анонимного.С другой стороны, анонимные типы - это безымянные типы, определенные так:

var anonymousObject = new { SomeField = 2, SomeOtherField = "Foo" };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...