0

我从 NHibernate 3 Cookbook(一本优秀的书,顺便说一句)中得到了这段代码,虽然我在勘误表中找不到任何内容。我收到错误“无法访问关闭的流”:

 var settings = new XmlWriterSettings { Indent = true };
 var serializer = new XmlSerializer(typeof(HbmMapping)); // todo: probably should abstract this out, at least optionally
 using (var memStream = new MemoryStream(2048))
 using (var xmlWriter = XmlWriter.Create(memStream, settings))
 {
     serializer.Serialize(xmlWriter, hbmMapping);
     memStream.Flush();
     memStream.Position = 0;

     using (var sr = new StreamReader(memStream))
     {
         return sr.ReadToEnd();
     }
 }

该错误在 sr.ReadToEnd() 行上引发。

4

1 回答 1

0

毕竟发现了一个类似的问题,Why disposing StreamReader 使流不可读?. 基本上,我删除了读者周围的使用,一切都很好。

于 2011-01-07T16:30:38.133 回答