这是我的代码指定的转换是无效的例外
var result = (from row1 in table.AsEnumerable()
join row2 in tabelPopup.AsEnumerable()
on row1.Field<string>("CallID") equals
row2.Field<string>("callID")
where row1.Field<string>("Direction") == "I"
select new
{
Agent = row1.Field<string>("Agent"),
StartTime = row1.Field<DateTime>("StartTime"),
Reason = row2.Field<string>("Reason")
});
其中table
和tablePopup
是数据表变量。
我得到这个异常:
Specified cast is not valid
这个代码:
new
{
Agent = row1.Field<string>("Agent"),
StartTime = row1.Field<DateTime>("StartTime"),
Reason = row2.Field<string>("Reason")
}
您确定列定义正确吗?即Agent是字符串,StartTime是日期时间,Reason是字符串? – artm 2014-10-07 10:43:48
显然,其中一个字段包含一个类型的值,这不是'Field'方法所期望的(假设它只是'(T)row [fieldName]')。 –
Dennis
2014-10-07 10:45:55
@artm你是对的,'datetime'应该是'string',请输入一个答案以接受它 – 2014-10-07 10:46:43