我正在尝试以与添加一列相同的方式删除特定类型的列,除了使用.Columns.Remove()
我正在使用 linq 来获取道具类型,然后使用 aforEach()
来删除列。我收到一个错误:
严重性代码 描述 项目文件行抑制状态错误 CS1503 参数 1:无法从 'System.Collections.Generic.IEnumerable' 转换为 'System.Data.DataColumn' Fabitrack C:\data\repositories\FABITrack\Fabitrack\Models\ReportBusinessLogic.cs 141 活跃
下面是我的代码:
//*Removing DOB from XLS file columns*/
var dob = from PropertyDescriptor props in pvPersonProps
where props.PropertyType.Name.Contains("dob")
select props.PropertyType;
foreach(PropertyDescriptor prop in pvPersonProps) {
table.Columns.Remove(dob);
}
如果有人好奇我是如何添加到表格中的,这里有一些代码。
var pvPersonProps = TypeDescriptor.GetProperties(typeof(PVPersonDTO)); //get prop info from PVPersonDTO object
var pvValResProps = TypeDescriptor.GetProperties(typeof(PVValidationDTO)); //get prop info from PVValidationDTO object
DataTable table = new DataTable();
/*Adding colums for Person collection*/
foreach (PropertyDescriptor prop in pvPersonProps) //iterate prop info from PVPersonDTO object and create column structure
{
table.Columns.Add(prop.Name, Nullable.GetUnderlyingType(prop.PropertyType) ?? prop.PropertyType);
}