2

私は HTMLAgilityPack を使用しており、ドキュメントをロードしてノードを選択するための標準的な操作手順を使用しています。ただし、ノードを表示すると、すべての aspx コントロールが小文字になります。たとえば、それを見ると、<asp:RequiredFieldValidatorとして返され<asp:requiredfieldvalidatorます。コントロールを大量に更新しているため、これは機能しません。

        HtmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument();

        doc.Load(@"C:\my.ascx");
        HtmlNodeCollection node_collection = doc.DocumentNode.SelectNodes("//div");
foreach (HtmlNode node in node_collection)
        {
           templateString = node.InnerHtml; //lower case happens here.....
        }

誰か?

4

2 に答える 2

5

必要なのは、OptionOutputOriginalCase前にtrue を設定することだけですLoad

var doc = new HtmlAgilityPack.HtmlDocument();
doc.OptionOutputOriginalCase = true;

doc.LoadHtml("<html><asp:RequiredFieldValidator></asp:RequiredFieldValidator></html>");

var html = doc.DocumentNode.InnerHtml;
于 2013-09-03T17:30:03.010 に答える