/ / як використовувати foreach у linq - c #, linq, foreach, anonymous-type

як використовувати foreach в linq - c #, linq, foreach, анонімні типи

Я прочитав у якомусь блозі деякий час тому (вибачте за невизначеність), що я міг би використовувати такий посилання, як наведене нижче

var list = from c in xml
select new
{
foreach(XElement el in c.Elements())
{
}
}

Хтось знає, чи можливо це, чи це лише моя фантазія ??

Дякую.

Відповіді:

2 для відповіді № 1

Ви можете використовувати функцію ToList () для перетворенняелементів до списку Списку, тоді на ньому можна використовувати метод ForEach. FYI при використанні LinqToXml я вважаю Нащадки () більш корисними, оскільки це дозволить повністю зануритися в об'єктну модель.

xml.Elements().ToList().ForEach(ele => DoSomething(ele));

4 для відповіді № 2

Ви не можете використовувати foreach цикл безпосередньо у виразі ініціалізації анонімного типу, №.

Якби ви могли сказати нам, чого ви намагаєтесь досягти, ми, мабуть, могли б допомогти вам знайти найкращий спосіб зробити це.


1 для відповіді № 3

Це ваша фантазія. Ви можете використовувати результати запиту linq у циклі foreach, але не можете використовувати цикл foreach, подібний тому, що в оголошенні для анонімного типу.


0 для відповіді № 4

Добре, у мене є xml з двох частин, спочатку заявляєполя в xml та другій частині містять дані, пов'язані з оголошенням у першій частині. Отже, що я намагаюся зробити, це прочитати перше з визначення поля та використати це для створення анонімного класу даних у другому розділі. Намагаємось не жорстко кодувати програму, оскільки ми отримуємо дані з різних джерел з різними визначеннями полів.