我正在使用新的System.Xml.Linq来创建HTML文档(是的,我知道HtmlDocument,但更喜欢XDocument/XElement类).我在插入
(或任何其他HTML实体)时遇到问题.我已经尝试过了:
只是直接放入文本不起作用,因为&转换为int&.
new XElement("h1", "Text to keep together.");
我尝试使用以下内容在原始XML中进行解析,但是barfs出现此错误:
XElement.Parse("文字保持在一起.");
- >引用未声明的实体'nbsp'
尝试编号三如下所示.如果我保存到文件中,只有一个空格,
就会丢失.
var X = new XDocument(new XElement("Name", KeepTogether("Hi Mom!"))); private static XNode KeepTogether(string p)` { return XElement.Parse("" + p.Replace(" ", " ") + " ").FirstNode; }
我找不到一种方法只是将原始文本推送过去而不会被转义.我错过了一些明显的东西吗
我找不到一种方法只是将原始文本推送过去而不会被转义.
只需将Unicode字符放在那个 直接在文本节点中引用(U + 00A0 NO-BREAK SPACE),然后让序列化器担心它是否需要转义为 或不.(可能不是:如果您使用UTF-8或ISO-8859-1作为页面编码,则可以直接包含该字符,而无需担心将其编码为实体引用或字符引用).
new XElement("h1", "Text\u00A0to\u00A0keep\u00A0together");