2016-07-27 4 views
0

У меня есть List<MyObject>, который возвращается из обращения к моему репо. Мне нужно вернуть результат JSON в мой DataTable. Просто, чтобы проверить, я hardcode результаты, и это работает, когда я возвращаю его в свой интерфейс.Список анонимных типов

var result = new[] 
{ 
    new { name = "Craig", id="1" }, 
    new { name = "Melanie", id="2" } 
}; 

Теперь мне нужно лучше использовать список я получил назад от моего вызова службы, но я не знаю, как пройти через это, и создать такой же тип результата.

Я пробовал это, но это синтаксически неверно, но это идея того, что я пытаюсь сделать.

var t = results.Select(x => x = new { name = x.ResultText, id = x.ItemId }).ToArray(); 

Я не могу сделать foreach, я могу? Как я могу перебирать результаты моего служебного вызова и строить свой ответ, чтобы вернуться к своему пользовательскому интерфейсу.

ответ

3

Вам не нужно (и в принципе вы не можете) переназначитьx, поскольку вы не можете изменить перечисление во время его итерации. Просто возьмите возвращаемое значение из Select -query и сохраните его в переменной:

var t = results.Select(x => new { name = x.ResultText, id = x.ItemId }).ToArray();