c# – HtmlAgilityPack MixedCodeDocument的用途是什么?
作者:互联网
我正在使用HtmlAgilityPack的1.4版本,据我所知,MixedCodeDocument和相关的类可以帮助你解析asp.net和ascx文件中的asp.net标记.我发现了MixedCodeDocument类的零文档或示例.从我的尝试来看,似乎MixedCodeDocument将文件的文本分成几个分隔asp.net片段和nonasp.net片段的块.例如,以下代码段:
<asp:Label ID="lbl_xyz" runat="server" Text='<%=Name%>'></asp:Label>
<a href='#'>blah</a>
将被分解为:
// Text fragment 1
<asp:Label ID="lbl_xyz" runat="server" Text="
// Code fragment 1
<%=Name%>
// Text fragment 2 (two lines)
></asp:Label>
<a href='#'>blah</a>
但是没有比这更深入的解析,即a标签没有用属性或类似的东西解析成它自己的节点.
所以我最好的猜测是,期望使用MixedCodeDocument去除代码片段,以便将剩余的文本片段拼凑在一起,然后使用HtmlDocument类进行解析.
有人知道这是否正确?或者甚至更好,有没有人提供使用HAP或其他方法成功解析和操作aspx或ascx文件的方法?
解决方法:
你猜是100%正确.
MixedCodeDocument类旨在能够解析包含两种语言的文本,即经典ASP,ASP.NET等,因此名称:-)
最初,Html Agility Pack用于一个能够处理和转换各种文件的整个树的工具,包括HTML和其他类型的文件.如果您只需要替换其他文件的HTML部分,这个类可以帮助您分割代码和加价和.然后可以通过其他方式解析分离的代码和标记块.
我认为今天没有人使用它:)
标签:c,asp-net,html-agility-pack 来源: https://codeday.me/bug/20190710/1418808.html