Я пытаюсь удалить столбец определенного типа таким же образом, как я бы добавил один, за исключением использования .Columns.Remove()
Я использую linq для захвата типа проп, а затем forEach()
для удаления столбцов. Я получаю сообщение об ошибке:
Код серьезности Описание Состояние подавления строки файла проекта
Ошибка CS1503 Аргумент 1: невозможно преобразовать из 'System.Collections.Generic.IEnumerable' в 'System.Data.DataColumn' Fabitrack C: \ data \ repositories \ FABITrack \ Fabitrack \ Models \ ReportBusinessLogic.cs 141 Active
Ниже мой код:
//*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);
}