我希望能够将 aspx 页面加载到 XmlDocument 变量中。我怎么做?这是我尝试过的,它期望 .xml 文件而不是 .aspx 页面。有没有办法将aspx页面即时转换为xml文档并加载它?谢谢
string filePath = @"C:\WebApplication1\webform4.aspx";
XmlDocument document = new XmlDocument();
document.Load(filePath);
我收到以下错误:
名称不能以“%”字符开头,十六进制值 0x25。第 1 行,位置 2。
最佳答案
您收到该错误的原因:
Name cannot begin with the '%' character, hexadecimal value 0x25. Line 1, position 2.
是因为.aspx
页面通常不是有效的 XML。 ASP.NET .aspx
页面包含指令,例如:
<%@ Page Language="C#" [possibly other stuff] %>
<%@
和%>
不是有效的 XML,这就是您无法加载原始 ASPX 页面的原因。
现在,即使您要删除这些指令,也很有可能除非您非常非常严格并且页面上的所有标记都是 XHTML,否则也不会加载。
您可能想尝试使用 HTML Agility Pack 加载页面(带或不带指令)可以通过 NuGet 下载。
关于c# - 将 aspx 文件加载到 xmldocument 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11443441/