このコードブロックはNHibernate3クックブック(優れた本、ところで)から入手しましたが、正誤表には何も見つかりませんでした。「閉じたストリームにアクセスできません」というエラーが表示されます。
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()行にスローされます。