1

我需要帮助来弄清楚如何从MemoryStream.

var xmlStream = new MemoryStream();
e.Extract(xmlStream);

if (xmlStream != null)
{
    TextReader tr = new StreamReader(xmlStream);
    var contentItems = new ContentItems();
    var serializer = new XmlSerializer(typeof(ContentItems));
    contentItems = (ContentItems)serializer.Deserialize(tr); // Error is here
4

1 回答 1

3

我找到了解决方案

我们应该添加

 xmlStream.Seek(0, SeekOrigin.Begin);

所以最终的代码看起来像

var xmlStream = new MemoryStream();
e.Extract(xmlStream);

if (xmlStream != null)
{
    xmlStream.Seek(0, SeekOrigin.Begin);
    var contentItems = new ContentItems();
    var serializer = new XmlSerializer(typeof(ContentItems));
    contentItems = (ContentItems)serializer.Deserialize(xmlStream); // NO ERROR
于 2013-04-12T13:06:48.343 回答