存储数据并在WP7上使用它

时间:2011-10-18 10:44:38

标签: windows-phone-7 xml-parsing query-string

我的WP7应用程序包括: 登录页面 :我在其中插入用户名和密码,然后单击按钮发送XML请求,我得到一个XML文件,我从中获取了我必须存储的user_id它在某处可以使用它。 朋友页面 :发送包含user_id的请求,我获取xml文件中的朋友列表,我必须解析才能显示列表但我必须存储friend_id,因为曾经用户选择列表中的朋友,它将导航到显示该朋友中的信息的另一页面,并使用包含friend_id的URL。 问题是,在登录页面我使用querystring方法重新使用user_id并且它工作,但int朋友页面它不起作用,我没有找到一个简单的方法来存储我的朋友信息并重新使用它们再次特别是因为下面的xml解析:

  void friends_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
    {
        if (e.Error == null)
        {
            var doc = XDocument.Load(new StringReader(e.Result));
            var items = from item in doc.Element("information").Elements("item")
                        select new User
                        {
                            id = item.Element("id").Value,
                            nom = item.Element("nom").Value,
                            photo = item.Element("photo").Value
                        };
            listBoxFriends.ItemsSource = items;
        }
    }

3 个答案:

答案 0 :(得分:0)

您是否考虑过使用Isolated Storage来保存与应用相关的信息。

更多overview see here

答案 1 :(得分:0)

如果您正在寻找一种方法来保存ID。您可以使用为应用程序保留的IsolatedStorage

IsolatedStorageSettings userSettings = IsolatedStorageSettings.ApplicationSettings;
List<int> friendidList = new List<int>();
userSettings.Add("friend_ids", friendidList);
userSettings.Save();

获取值

object friendids;
userSettings.TryGetValue("friend_ids", out friendids);

答案 2 :(得分:0)

You can use PhoneApplictaionStates/ Isolated Storage for storing the data. 
for eg :-
you can save the username to state like this
PhoneApplicationService.Current.State[key] = userName.Text; // here key is the identifier 
for retrieving the username
string userName = PhoneApplicationService.Current.State[key];