Я хочу захватить имена столбцов, которые необходимо добавить в таблицу SQL, чтобы вставить данные.За исключением проблемы с ключевым словом в LINQ
Columnspresent
- Список всех столбцов в файле ("Node", "Logtime", "Причина", "ID", "Комментарии")
existingtablecolumnsPresent
- Список всех столбцов в существующую таблицу в SQL («Узел», «Значение», «Причина», «Идентификатор»), «Комментарии», «Время регистрации»)
columnsNotPresent
- Список столбцов, которые необходимо добавить в таблицу SQL (необходимо получить «Значение» на выходе, но не получено).
List<string> columnsPresent =
dt.Columns.Cast<DataColumn>()
.Select(a => a.ColumnName.ToLower())
.ToList();
List<string> existingtablecolumnsPresent =
existingtable.Columns.Cast<DataColumn>()
.Select(a => "[" + a.ColumnName.ToLower() + "]")
.ToList();
List<string> columnsNotPresent =
columnsPresent.OrderBy(t => t)
.Except(existingtablecolumnsPresent.OrderBy(t => t))
.ToList();
Вышеупомянутый код не является givin g правильные результаты, если есть изменение порядка столбцов. Пожалуйста, сообщите.
прочитать: HTTP : //stackoverflow.com/questions/16824749/using-linq-except-not-working-as-i-thought. –
Почему вы не используете 'OrderBy' прямо перед' ToList() ' – schlonzo