[英]Illegal characters in path exception when Transforming XML
我正在从文件加载XML,然后将XSLT转换为HTML。 为此,我使用带有2个字符串的Transform的重载作为参数,因此将XML转换为字符串。 (XSL正在工作-单独检查)。 但是,当我尝试运行它时.Transform()
方法的result
参数出现异常。
XmlDocument xml = new XmlDocument();
XslCompiledTransform xsltTrans = new XslCompiledTransform();
string htmlResult = "test";
string xmlContents;
private string getXMLAsString(XmlDocument myxml)
{
StringWriter sw = new StringWriter();
XmlTextWriter tx = new XmlTextWriter(sw);
myxml.WriteTo(tx);
string str = sw.ToString();
return str;
}
public String getHTMLresult()
{
xml.Load(@"L:\ProjectGroup\GK\XML documents\Parent-Child.xml");
xmlContents = getXMLAsString(xml);
xsltTrans.Load(@"L:\ProjectGroup\GK\XML documents\blah.xsl");
xsltTrans.Transform(xmlContents, htmlResult);
return htmlResult;
}
是否因为htmlResult
已经具有值? 但是,如果我将其保留为空白,或者将其设置为null
,则会出现异常, null values are not allowed
。 那我怎么用非法字符解决这个问题呢?
这是尽可能短的版本,请尝试:
XslCompiledTransform xsltTrans = new XslCompiledTransform();
string htmlResult;
string xmlContents = @"L:\ProjectGroup\GK\XML documents\Parent-Child.xml";
public String getHTMLresult()
{
xsltTrans.Load(@"L:\ProjectGroup\GK\XML documents\blah.xsl");
StringWriter sw = new StringWriter();
XmlTextWriter xw = new XmlTextWriter(sw);
xsltTrans.Transform(xmlContents, null, xw);
htmlResult = sw.ToString();
return htmlResult;
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.