我使用IsolatedStorage来保存用户的整数。要添加第一个整数,它可以正常工作。给定整数成功添加。
但是,在使用IsolatedStorage IsolatedStorageSettings.ApplicationSettings["Key"] = site;
将另一个整数保存在同一个字符串上(以替换旧整数)时,App会中断。
这里是我的代码:
int num = 0;
if (int.TryParse(txtbox.Text, out num) && num > 0)
{
string site;
site = num.ToString();
IsolatedStorageSettings.ApplicationSettings.Add("Key", site);
IsolatedStorageSettings.ApplicationSettings["Key"] = site;
IsolatedStorageSettings.ApplicationSettings.Save();
MessageBox.Show("Bookmark created successfully");
}
else
{
MessageBox.Show("TextBox is not supposed to be empty");
}
答案 0 :(得分:1)
你应该删除这一行:
IsolatedStorageSettings.ApplicationSettings.Add("Key", site);
如果您已经有一个名为Key
的设置,该行将引发异常,as documented:
<强>例外:强>
ArgumentException
-key
已存在于词典中。
......而这一行:
IsolatedStorageSettings.ApplicationSettings["Key"] = site;
只需替换之前的任何值。
你应该退后一步,弄清楚为什么你不能自己发现这个:你说应用程序“中断” - 可能是一个异常被抛出,你应该确保你能够获得堆栈跟踪(和消息)任何异常。这应该确定问题所在。能够看到您的应用程序抛出的任何异常非常重要,否则诊断问题会非常困难。