0

这是声明save_g

public static IsolatedStorageSettings save_g = IsolatedStorageSettings.ApplicationSettings;

这里 cons.term[7] 是字符串类型

save_g[cons.term[7]] = (double)save_g[cons.term[7]] + 1;

上面的语句在模拟器上执行没有问题。但是当我在设备(Lumia 820)上运行它时会出错。

A first chance exception of type 'System.InvalidCastException' occurred in PhoneApp2.DLL

An exception of type 'System.InvalidCastException' occurred in PhoneApp2.DLL but was not handled in user code

而且我不知道出了什么问题。

请帮忙。

4

1 回答 1

2

无效的强制转换异常意味着它save_g[cons.term[7]]不是double. 该值很可能为空。您应该检查save_g[cons.term[7]]第一次分配值的代码部分。

如果它是您分配此值的唯一位置,您应该添加代码来处理这种情况:

double value = save_g[cons.term[7]] == null ? 0 : save_g[cons.term[7]];
save_g[cons.term[7]] = value + 1;
于 2013-03-27T21:36:06.630 回答