我正在使用
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类进行解析.