У меня 14 запросов LINQ для разрешения одним способом. Ни у одного из них нет базового запроса, от которого я мог бы повесить их как подзапросы, а затем сохранить результаты как свойства экземпляра анонимного типа.
Вместо того, чтобы делать 14 отдельных вызовов в базу данных, как я могу гарантировать, что все они вызываются в одной и той же операции?
UPDATE
В итоге я использовал хитрый хак, который добился цели. Я знаю, что ВСЕГДА будет хотя бы один пользователь в пользовательской таблице, поэтому я использовал:
var data = (from tmp in DataContext.Users
select new {
Property1 = (from...),
Property2 = (from...),
PropertyN = (from...),
}).First();
ОБНОВЛЕНИЕ 2
В одном из ответов подразумевалось, что это может привести к ошибкам MARS (множественный активный набор результатов). Что это за ошибки (я никогда их не видел), почему они происходят, и есть ли что-то неправильное во всей предпосылке этой линии вопросов? я ошибаюсь в своем утверждении, что запрос базы данных вернуть все за один раз будет быстрее / эффективнее, чем выполнение четырнадцати полностью отдельных запросов LINQ?
ОБНОВЛЕНИЕ 3
Я думаю, что мой подход избыточен и, с прагматической точки зрения, должен обрабатываться по-разному, либо с помощью хранимой процедуры, либо с помощью какого-либо подхода с задержкой / смешанным подходом.