[英]How to store data in Isolated Storage in Windows Phone 7
我正在为Windows Phone 7构建应用程序。
我正在使用来自Web服务的数据,我想将其保存在隔离的存储中,以便下次查看数据时,即使脱机也可以显示数据。
我的cs文件是:
public about()
{
InitializeComponent();
KejriwalService.aapSoapClient myclient = new KejriwalService.aapSoapClient();
myclient.getarvindAboutCompleted += new EventHandler<KejriwalService.getarvindAboutCompletedEventArgs>(myclient_getarvindAboutCompleted);
myclient.getarvindAboutAsync();
}
void myclient_getarvindAboutCompleted(object sender, KejriwalService.getarvindAboutCompletedEventArgs e)
{
var data = e.Result;
XElement xml = XElement.Parse(data);
aboutview.Text = xml.Elements("UserDetails").Elements("about_details").First().Value;
}
存储数据的最简单方法之一是将它们存储在IsolatedStorageSettings中。 您可以为此目的创建一个属性:
string PropertyName
{
get
{
var settings = System.IO.IsolatedStorage.IsolatedStorageSettings.ApplicationSettings;
if (settings.Contains("valueKeyName"))
return (string)settings["valueKeyName"];
else
return null;
}
set
{
var settings = System.IO.IsolatedStorage.IsolatedStorageSettings.ApplicationSettings;
if (settings.Contains("valueKeyName"))
settings["valueKeyName"] = value;
else
settings.Add("valueKeyName", value);
}
}
IsolatedStorageSettings将键值对存储在字典中。 您应该只选择存储值的键名和属性名。
借助IsolatedStorageSettings,您可以将数据以键值对的形式保存,如下所示:
var Iso_settings = System.IO.IsolatedStorage.IsolatedStorageSettings.ApplicationSettings;
if (!Iso_settings.Contains("yourDataKey"))
{
Iso_settings.Add("yourDataKey", yourDataValue);
Iso_settings.Save()//This will save your data in isolated storage.
}
如果您不希望脱机数据并存储数据,请不要使用Sqlite。两种最佳方法是使用隔离存储和linq,因此,如果您只有1-2个数据成员,并且必须更改那里的值,则可以使用如果您有2-3列和行以表的形式存储数据,则用LINQ进行独立存储。
隔离存储的用法如下:
try
{
if (IsolatedStorageSettings.ApplicationSettings.Contains("email_id"))
{
IsolatedStorageSettings.ApplicationSettings["email_id"] = emailid;
IsolatedStorageSettings.ApplicationSettings["password"] = password;
IsolatedStorageSettings.ApplicationSettings.Save();
}
else
{
IsolatedStorageSettings.ApplicationSettings.Add("email_id", emailid);
IsolatedStorageSettings.ApplicationSettings.Add("password", password);
IsolatedStorageSettings.ApplicationSettings.Save();
}
}
catch (Exception ex)
{
Console.WriteLine(ex.InnerException);
}
对于linq, 请访问http://www.codeproject.com/Articles/43025/A-LINQ-Tutorial-Mapping-Tables-to-Objects 。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.