Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/326.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#Convert.ChangeType()在int和object之间转换时抛出InvalidCastException_C#_.net_Exception_Type Conversion - Fatal编程技术网

C#Convert.ChangeType()在int和object之间转换时抛出InvalidCastException

C#Convert.ChangeType()在int和object之间转换时抛出InvalidCastException,c#,.net,exception,type-conversion,C#,.net,Exception,Type Conversion,我对ChangeType()方法有一个问题,它过去工作正常,但现在抛出:对象必须实现IConvertible。 过去的代码是这样的: Type type = DataType.TypeDictionary[(DataType.TYPE)setting.SettingType]; object value = binFormer.Deserialize(memStream); Settings.Add(setting.SettingName, Convert.ChangeType(value,

我对ChangeType()方法有一个问题,它过去工作正常,但现在抛出:
对象必须实现IConvertible。

过去的代码是这样的:

Type type = DataType.TypeDictionary[(DataType.TYPE)setting.SettingType];

object value = binFormer.Deserialize(memStream);

Settings.Add(setting.SettingName, Convert.ChangeType(value, type));
现在是这样的:

Type type = DataType.TypeDictionary[(DataType.TYPE)setting.SettingType];

object value = binFormer.Deserialize(memStream);

settingItem.SettingName = setting.SettingName;
settingItem.SettingComment = setting.SettingComment;
settingItem.SettingData = Convert.ChangeType(value, type);

Settings.Add(settingItem);
它引发异常的数据类型为-Int32,值应为object。我没有改变转换本身…我可能错过了一些明显的东西


提前谢谢

消息非常清楚-
的类型不实现
IConvertible
。例如,使用调试器找出值的实际类型。您是对的,问题实际上是在其他地方,因为其他函数输出发生了更改,谢谢您的回答。