解析xml @ wp7时内存不足

时间:2012-02-07 08:07:51

标签: xml windows-phone-7

我正在创建一个应用来阅读Twitter提要,但是,不会发生。 OutOfMemory异常在解析时发生。

所以,这是解析器的代码:

MainViewModel mvm = new MainViewModel();
mvm.Items.Clear();

if (e.Error == null && e.Result != null)
{
    XDocument xTweets = XDocument.Parse(e.Result);
    foreach (var tweets in xTweets.Descendants("status"))
    {
       ItemViewModel ivm2 = new ItemViewModel()
       {
           TweetImage = tweets.Element("user").Element("profile_image_url").Value,
           TweetSender = tweets.Element("user").Element("screen_name").Value,
           Tweet = tweets.Element("text").Value,
       };
      Items.Add(ivm2);
    }
}
那么,哪条线路惹麻烦了?提前谢谢

1 个答案:

答案 0 :(得分:0)

OutOfMemroyException表示您的应用程序内存不足。这不能归因于您的应用程序中的任何单行代码!您正在解析的XML文件有多大?

如果它很大,你应该考虑使用像[XmlReader] [1]这样的串行解析器。这种类型的解析器不会创建基于内存的文档模型,并且只以向前的方式操作,迫使您只读取一次元素。

请参阅此相关问题:

Tips for XML performance optimization on WP7