Linq按日期时间字段对数据表进行排序

Linq按日期时间字段对数据表进行排序,linq,Linq,如何使用Linq对数据表进行排序?我尝试了以下操作,但收到错误: 用户代码未解析InvalidCastException。不允许指定强制转换 var query = from c in allFiles.AsEnumerable() orderby c.Field<DateTime>(1) descending select c; var query=allFiles.AsEnumerable()orderby c.Field(1)中的c 降序选择c; 这表明至少在某些行中,字段

如何使用Linq对数据表进行排序?我尝试了以下操作,但收到错误: 用户代码未解析InvalidCastException。不允许指定强制转换

var query = from c in allFiles.AsEnumerable() orderby c.Field<DateTime>(1) 
descending select c;
var query=allFiles.AsEnumerable()orderby c.Field(1)中的c
降序选择c;

这表明至少在某些行中,字段1不是日期时间。如果它可能为空,您可能需要尝试
DateTime?
。或者首先检查它是否真的是该字段。。。可能使用名称而不是数字?

该表是动态生成的,没有实际指定的列数据类型。当我创建列并指定数据类型时,问题得到了解决

我不知道为什么在我发布这个问题之前,我没有意识到数据类型是没有定义的