У меня есть DataTable в главном контроллере следующим образом:Как сделать, фильтрование операции вручную Комплекс DataTable
public DataTable GetTable()
{
DataTable table = new DataTable();
table.Columns.Add("Dosage", typeof(int));
table.Columns.Add("Drug", typeof(string));
table.Columns.Add("Patient", typeof(Info));
table.Columns.Add("Date", typeof(DateTime));
table.Rows.Add(25, "Indocin", new Info("India"), DateTime.Now);
table.Rows.Add(50, "Enebrel", new Info("UK"), DateTime.Now);
table.Rows.Add(10, "Hydralazine", new Info("Bhutan"), DateTime.Now);
table.Rows.Add(21, "Combivent", new Info("India"), DateTime.Now);
table.Rows.Add(100, "Dilantin", new Info("GreenLand"), DateTime.Now);
return table;
}
Информационного класс следующего
public class Info
{
public string Address { get; set; }
public Info(string Add) {
this.Address = Add;
}
}
Теперь я хочу сделать операцию фильтрации основанный на поле адреса, т.е. Patient.Address
Здесь пациент находится объект класса Info
Я принес информацию о каждых колонках следующим образом я определил функциональные возможности в методе «DataTableExtensions.DataTableSerialize (данные)»
DataTableExtensions.DataTableSerialize(data)
Count = 4
[0]: {[Dosage, System.Nullable`1[System.Int32]]}
[1]: {[Drug, System.String]}
[2]: {[Patient, MvcApplication66.Controllers.HomeController+Info]}
[3]: {[Date, System.Nullable`1[System.DateTime]]}
Но, мне нужно фильтровать DataTable на основе Patient.Address
Я получил ошибку в следующей строке.
DataTableExtensions.DataTableSerialize(data)[ColumnName]
Необработанное исключение типа 'System.Collections.Generic.KeyNotFoundException' произошло в mscorlib.dll
Дополнительная информация: Данный ключ не присутствовал в словаре.
Где я совершаю ошибку.
Возможно ли выполнить операцию фильтрации в таблице сложных данных.
Привет VDWWD, Да, я использовал Linq для извлечения данных, но я хочу, чтобы сформировать предикат для сценариев, Вместо того чтобы писать непосредственно в условии «Где». Я хочу создать условие с помощью метода Express.call. Не могли бы вы рассказать мне, как это сделать? – Kalai
Извините, что я не знаю. – VDWWD