Я пытаюсь воссоздать объект SyndicationFeed (System.ServiceModel.Syndication) из данных XML, которые были сохранены локально.
Если бы я работал с XMLDocument, это было бы легко. Я бы вызвал LoadXml (string).
SyndicationFeed будет загружаться только из XMLReader. XMLReader будет принимать только Stream, другой XMLReader или TextReader.
Поскольку XMLDocument будет загружать строку, я попытался сделать это следующим образом (в форме метода расширения):
public static SyndicationFeed ToSyndicationFeed(this XmlDocument document)
{
Stream thestream = Stream.Null;
XmlWriter thewriter = XmlWriter.Create(thestream);
document.WriteTo(thewriter);
thewriter.Flush();
XmlReader thereader = XmlReader.Create(thestream);
SyndicationFeed thefeed = SyndicationFeed.Load(thereader);
return thefeed;
}
Я не могу заставить это работать. Поток всегда пуст, даже если XMLDocument заполняется фидом для загрузки в SyndicationFeed.
Любая помощь или указатели, которые вы можете дать, были бы наиболее полезны.
Спасибо,
Roberto