1
我不能使用示例here,因为它特定于asker正在使用的结构。使用LINQ Except()和两个不同类型的集合
目前,我打算:
PropertyInfo[] props = this.GetType().GetProperties();
foreach (DataColumn dataColumn in dataAsDataRow.Table.Columns)
if(!props.Any(p => p.Name == dataColumn.ColumnName))
...
我宁愿有一个线的东西,如:
foreach (DataColumn dataColumn in dataAsDataRow.Table.Columns.Cast<DataColumn>.Except(props))
...
任何想法?
不幸的是,dataAsDataRow.Table.Columns是DataColumnCollection,而不是一个DataColumns数组,所以这给了编译器错误:“'DataColumnCollection'不包含'Where'的定义。然而,这很容易通过添加“Columns.Cast().Where”来解决。感谢您的想法! –
Alain