Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

Собрать список?

19.07.19 14:09
Re: Собрать список?
 
Murr патриот
Murr
в ответ Murr 25.06.19 22:36

Вот подвсплыло еще немного LINQ...


Код:


List<DataColumn> duplicatedColumns = dt.Columns.Cast<DataColumn>()
.Where(dc => additionalColumns.Any(p => p.ColumnName == dc.ColumnName))
.ToList();
foreach(DataColumn column in duplicatedColumns)
{
dt.Columns.Remove(column);
}



Делает простую работу - удаляет из таблицы колонки которые там уже есть и есть в списке additionalColumns.

Остальное - остается на месте.


Почему так - не суть важно, но если интересно - заменяется тип колонки и дефаултное значение.


Вопросик над которым думаю:

- Можно ли написать все тоже самое, но без цикла в конце?

Т.е. нужно чтобы дублирующие (по имени) колонки были удалены.


П.С. Про то, что LINQ не является языком манипулации данными Я в курсе. Как обойти?

П.П.С. Про то, что источник данных длйa итератора не должен менятся в процессе - разумеется тоже.

 

Перейти на