Я хочу отсортировать таблицу данных на основе столбца со значением даты. Я столкнулся с проблемами, поэтому я создал следующий метод тестирования:
private static void Test()
{
DateTime testDate = DateTime.Parse("01/01/2011");
DataTable table = new DataTable();
table.Columns.Add("dateValue");
table.Columns.Add("slNo");
DataRow row1 = table.NewRow();
row1["dateValue"] = "01/01/2011";
row1["slNo"] = "1";
DataRow row2 = table.NewRow();
row2["dateValue"] = "01/02/2011";
row2["slNo"] = "1";
DataRow row3 = table.NewRow();
row3["dateValue"] = "02/01/2011";
row3["slNo"] = "1";
DataRow row4 = table.NewRow();
row4["dateValue"] = "01/03/2011";
row4["slNo"] = "1";
table.Rows.Add(row1);
table.Rows.Add(row2);
table.Rows.Add(row3);
table.Rows.Add(row4);
var t = table.AsEnumerable().OrderBy(x => x.Field<DateTime?>("dateValue")).ToList();
}
Я получаю следующее сообщение об ошибке:
Specified cast is not valid.
Предоставленная дата может быть проанализирована для объекта DateTime. Но все равно получаю вышеуказанную ошибку. Есть идеи, чего не хватает?
Я использую C # 3.5