System.InvalidCastException异常解决
出现异常,点击“调试”,提示如下:“未处理的“无效Cast”类型的异常。
当在显式引用转换期间发生失败时,会引发 InvalidCastException 异常。引用转换是从一种引用类型到另一种引用类型的转换。引用转换可以更改引用的类型,但从不更改转换目标的类型或值。将对象从一种类型强制转换为另一种类型是此异常的常见原因。
问题代码:
SqlDataReader d = FD.DBUtility.SqlHelper.ExecuteReader(connectionString1, CommandType.Text, "SELECT Value FROM INSQL.Runtime.dbo.Live WHERE TagName = @name", paa);
if(d.Read())
{
speed = d.GetFloat(0);
}
实际取出的值为double,所以无法进行隐式强制类型转换。
改为
if(d.Read())
{
speed = d.GetDouble(0);
}
问题解决