Обновление таблиц с помощью выражений Linq - PullRequest
1 голос
/ 27 мая 2010

Большинство примеров, которые я нашел, касаются Linq для сущностей, а это не то, что мне нужно. У меня есть стандартный DataTable, который мне нужно изменить, прежде чем вернуться к вызывающей стороне. Я могу перебрать обычную коллекцию Table.Rows или сделать что-то подобное с новыми методами расширения:

foreach (var x in table.AsEnumerable()) {
    if (x.Field<int>("SomeField") > SomeValue)
        x.SetField<string>("OtherField", "OtherValue");
}

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

1 Ответ

1 голос
/ 16 марта 2011

Я думаю, что вам интересно, есть ли какой-нибудь метод расширения, такой как

stuff.ForEach(x => x.Value = "new value"); 

К сожалению, такого нет. Когда я начал использовать LINQ to SQL, я хотел того же. Но, к сожалению, вы должны использовать цикл for.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...