2012-02-07 4 views
0

Я создаю приложение для чтения твиттер-каналов, но sh * t происходит. OutOfMemory Исключение происходит при разборе.исключение из памяти исключение при разборе xml @ wp7

так, вот код парсера:

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); 
    } 
} 

так, что линия делает неприятности? заранее спасибо

ответ

0

OutOfMemroyException указывает, что ваше приложение закончилось. Это не может быть отнесено ни к одной строке кода в вашем приложении! Насколько велик XML-файл, который вы разыгрываете?

Если большой, вам следует использовать его с помощью сериального синтаксического анализатора, такого как [XmlReader] [1]. Анализаторы такого типа не создают модель вашего документа на основе памяти и работают только в прямом режиме, заставляя вас читать каждый элемент только один раз.

Смотрите этот родственный вопрос:

Tips for XML performance optimization on WP7

+0

файл XML Я разбор является Твиттером, которая мала – user1072976

Смежные вопросы