2012-04-13 2 views
1

Как использовать ValueInjecter с соединением LINQ, которое объединяет несколько наборов результатов? Например, этот код вводит значения result в объект CombinedResult, но я также хочу, чтобы некоторые из значений errorsAndWarning составляли CombinedResult. Одноэтапные объекты имеют одно и то же название:ValueInjecter - Объединение нескольких наборов результатов в 1 коллекцию LINQ?

var combined = from result in results.DeferredItems 
       join errorsAndWarning in errorsAndWarnings.DeferredItems 
       on result.MeetingID equals errorsAndWarning.MeetingID 
       select new CombinedResult().InjectFrom(result) as CombinedResult; 

Спасибо.

ответ

3

Используйте это:

var combined = from result in results.DeferredItems 
       join errorsAndWarning in errorsAndWarnings.DeferredItems 
       on result.MeetingID equals errorsAndWarning.MeetingID 
       select new CombinedResult().InjectFrom(result) 
              .InjectFrom(errorsAndWarning) 
              as CombinedResult; 
+0

эй, Даниель, почему это не работает с IQueryable источником данных? есть ли способ для внутреннего соединения двух таблиц и отображения в viewmodel? thx – dfang

+0

@dfang: «Не работает» не является описанием ошибки. В чем проблема с вашим кодом? –

+0

«LINQ to Entities не распознает метод« System.Object InjectFrom (System.Object, System.Object []) », и этот метод не может быть переведен в выражение хранилища». \t см. Мой вопрос здесь: http://stackoverflow.com/questions/11988573, thx! – dfang

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