正在调查XMLReader对象
本文关键字:对象 XMLReader 调查 | 更新日期: 2023-09-27 17:58:05
我问了一个问题,关于如何在调试时调查XMLWriter
对象的内容。我正在尝试检查XmlReader
对象的内容,该对象是以与链接问题的答案中给出的类似的方式从内存流创建的。但是我得到了UnauthorizedAccessException
声明MemoryStream's internal buffer cannot be accessed.
如何验证从MemoryStream读取的xml?
public PInfo(byte[] pBytes)
{
MemoryStream pMem = new MemoryStream(pBytes);
XmlReader reader = XmlReader.Create(pMem);
//MemoryStream's internal buffer cannot be accessed.
string s = Encoding.UTF8.GetString(pMem.GetBuffer(), 0, (int)pMem.Position);
....
}
查看您正在使用的特定构造函数MemoryStream(Byte[])
的MSDN文档。当您以这种方式实例化它时,GetBuffer()
将抛出该异常,因为缓冲区实际上并不可见。您应该改为使用此构造函数,并确保将publiclyVisible
设置为true
。