Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.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
Windows phone 7 更新隔离存储中的数据_Windows Phone 7_C# 4.0 - Fatal编程技术网

Windows phone 7 更新隔离存储中的数据

Windows phone 7 更新隔离存储中的数据,windows-phone-7,c#-4.0,Windows Phone 7,C# 4.0,我有一个代码,可以在隔离空间中添加电子邮件id和名称。但它不能添加多个数据。此外,如果数据输入不正确,我如何更新 namespace IsoStore { public partial class MainPage : PhoneApplicationPage { // Constructor public MainPage() { InitializeComponent(); I

我有一个代码,可以在隔离空间中添加电子邮件id和名称。但它不能添加多个数据。此外,如果数据输入不正确,我如何更新

namespace IsoStore
{

    public partial class MainPage : PhoneApplicationPage
    {

        // Constructor
        public MainPage()
        {
            InitializeComponent();
            IsolatedStorageSettings appSettings = IsolatedStorageSettings.ApplicationSettings;
        }


        private void button1_Click(object sender, RoutedEventArgs e)
        {
            IsolatedStorageSettings.ApplicationSettings.Add("email", "someone@somewhere.com");
            IsolatedStorageSettings.ApplicationSettings.Add("name", "myname");
        }

        private void button2_Click(object sender, RoutedEventArgs e)
        {
            textBlock1.Text = (string)IsolatedStorageSettings.ApplicationSettings["email"];
            textBlock2.Text = (string)IsolatedStorageSettings.ApplicationSettings["name"];
        }
    }
}

使用助手方法执行存储,为您稍微清理了代码:

namespace IsoStore
{
    public partial class MainPage : PhoneApplicationPage
    {
        private IsolatedStorageSettings _appSettings;

        // Constructor
        public MainPage()
        {
            InitializeComponent();
            _appSettings = IsolatedStorageSettings.ApplicationSettings;                
        }


        private void button1_Click(object sender, RoutedEventArgs e)
        {
            SaveSetting("email", "someone@somewhere.com");
            SaveSetting("name", "myname");
        }

        private void button2_Click(object sender, RoutedEventArgs e)
        {
            textBlock1.Text = (string)_appSettings["email"];
            textBlock2.Text = (string)_appSettings["name"];
        }

        private void SaveSetting( string setting, string value )
        {
            if (_appSettings.Contains(setting))
            {
                _appSettings[setting] = value;
            }
            else
            {
                _appSettings.Add(setting, value);
            }
        }
    }
}
尝试一些其他示例,让您了解如何使用隔离存储设置


我有两个选择,您可以将数据保存到isolatedStorageFile,或者,在这种情况下,我可能会这样做,您可以将所有电子邮件保存在密钥email下,作为一个字符串,用电子邮件中不允许出现的字符分隔电子邮件,比如,当需要时,分开你的绳子,把它取回给任何让你感到舒服的地方

private void SaveSetting( string setting, string value )
    {
        if (_appSettings.Contains(setting))
        {
            _appSettings[settings] = _appSettings[settings] + "," + value;
        }
        else
        {
            _appSettings.Add(setting, value);
        }
    }

请注意,此代码段是从HiTech Magic的答案中复制的。

您所说的多个数据是什么意思?例如,我想保存10个电子邮件id和名称。如果同一封电子邮件保存两次,则不太有用。。。另外,在没有参考的情况下剪切和粘贴另一个答案(包括我的设置拼写错误),只是为了添加一点修改,被认为是剽窃……我想最终的目标是互相帮助,无论如何,我道歉。我复制了你的答案,因为我会这样做,如果你喜欢,我可以删除答案。重复条目可以轻松处理。还有另外一个选择!帮助不是问题。请参考您从他人处复制的任何内容,否则您将在此网站上遇到问题。谢谢。非常感谢,非常抱歉没有引用你作为来源。我一定会记住这一点。这样好吗?如何检索这些数据?@Mansinh:创建另一个帮助程序以返回字符串(如果字符串不存在,则返回null)