我正在尝试使用XslTransform从另一个XML生成XML.我将这两个文件(源XML和XSL转换文件)作为字符串内容,所以我试图将XSL文件作为XmlReader传递给XslTransform.Load()方法.现在必须从包含XSL文件的源字符串创建XmlReader,所以我尝试这样做:
MemoryStream memStream = new MemoryStream();
byte[] data = Encoding.Default.GetBytes(transformation.XsltContent);
memStream.Write(data, 0, data.Length);
memStream.Position = 0;
XmlReader reader = XmlReader.Create(memStream);
Run Code Online (Sandbox Code Playgroud)
并尝试使用StringReader:
XmlReader reader = XmlReader.Create(new StringReader(transformation.XsltContent));
Run Code Online (Sandbox Code Playgroud)
不幸的是,bot方法似乎不起作用,输入似乎没问题,我甚至尝试创建一些基本的单元素XML来传递,也不会工作 - 读者包含{None}.
有人能指出这里似乎有什么问题吗?
bhu*_*ng3 114
XmlReader xmlReader = XmlReader.Create(new StringReader(YourStringValue));
fej*_*oco 31
StringReader - > XmlReader方法很好,你应该坚持下去.读者报告没有,因为它尚未被阅读.尝试在其上调用Read()以查看当时会发生什么.转换也将调用read.