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 に答える