2

我试图从 IHttpHandler 返回一个 xml 字符串,如下所示:

context.Response.Write(xml);

当我在 .aspx.cs 中收到响应时,我尝试按如下方式加载文档:

var xml = XDocument.Load(xmlString);

但我收到一条Illegal Characters in Path错误消息。

我也试过

context.Response.Write(context.Server.HtmlEncode(xml));

var xml = XDocument.Load(Server.HtmlDecode(xmlString));

但我得到了同样的信息。有什么方法可以从我的 IHttpHandler 返回 XML?

4

3 回答 3

4

替换这个:

var xml = XDocument.Load(xmlString);

有了这个:

var xml = XDocument.Parse(xmlString);
于 2010-11-10T01:13:15.540 回答
1

XDocument.Load(String) 采用文件路径。您想使用接受 Reader 对象的重载之一。

于 2010-11-10T00:29:19.807 回答
1

尝试设置context.Response.ContentType = "application/xml"

显然还要确保 XML 格式正确,MSDN有一个从 HTTP 处理程序返回 XML 的示例。

尝试将 XML 放入验证器(或在浏览器中打开)以突出显示任何问题。

于 2010-11-10T00:32:53.017 回答