【发布时间】:2013-08-26 10:59:09
【问题描述】:
我在 LINQ 查询中遇到以下异常。
无法将“System.Int16”类型的对象转换为“System.String”类型。
var query = from t in dt.AsEnumerable()
select new
{
sys_db= t.Field<Int16>("process_id").ToString() + "|" + t.Field<string>("db_code").ToString(),
process_name = t.Field<string>("process_name").ToString()
};
为什么会出现这个问题以及如何解决?
【问题讨论】:
-
sys_db= t.Field
("process_id").ToString() + "|" + t.Field ("db_code").ToString(), 你为什么写 Int16?因为您需要更改为字符串......因为文本正在合并 -
您的
db_code是int的类型 -
Specified cast is not valid. -
“db_code”字段的数据类型是什么?它必须是 Int16
标签: c# asp.net linq casting .net