System.InvalidCastException:指定的强制转换仅在某些计算机上无效

时间:2010-01-12 10:41:44

标签: c# .net

我们有将对象强制转换为简短的代码。

type.BusinessAreaID = (short)caType.credit_assessment_biz_areaReference.EntityKey.EntityKeyValues[0].Value;

对象的值为2.

此代码(单元测试)适用于创建代码的开发人员的PC。但是我们在构建服务器和另一台开发PC上获得了无效的强制转换异常。

BusinessAreaID的类型为short。

Dll也在GAC中,我们已经更新了它,所以它应该是相同的。

任何人都有任何想法。

1 个答案:

答案 0 :(得分:6)

您无法将值拆分为其他类型。例如,这有效:

short x = 2;
object y = (object)x;
short z = (short)y;

但这不是:

int x = 2;
object y = (object)x;
short z = (short)y; // InvalidCastException

您确定caType...lues[0].Value中存储的值是short类型吗?