有没有人这样做过?基本上,我想通过保留基本标签如h1,h2,em等来使用html;清除img和标签中的所有非http地址;和HTMLEncode每隔一个标签。
我坚持使用HTML编码部分。我知道要删除一个节点你做“node.ParentNode.RemoveChild(node);”其中node是HtmlNode类的对象。而不是删除节点,我想HTMLEncode它。
您需要删除表示您不想要的元素的节点。然后需要将编码的HTML重新添加为文本节点。
如果您不想处理要丢弃的元素的子元素,那么您应该只能使用OuterHtml ......这样的事情可能会起作用:
node.AppendChild(new HtmlTextNode { Text = HttpUtility.HtmlEncode(nodeToDelete.OuterHtml) });