Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用元素将字符串解析为XML?_C#_Xml Parsing_Linq To Xml - Fatal编程技术网

C# 如何使用元素将字符串解析为XML?

C# 如何使用元素将字符串解析为XML?,c#,xml-parsing,linq-to-xml,C#,Xml Parsing,Linq To Xml,我有字符串s,它看起来: <root><p>hello world</p>&nbsp;my name is!</root> 如您所见,我希望加载包含所有元素的字符串,如,并使其成为视图。但我有一个XmlException: 对未申报的替代品的参考 有没有办法把它做好 补充 提供了一个好主意:将我的字符串放入标记中,但不幸的是,这并不能解决我的问题。我有一个很大的字符串,上面有很多标签和一些大的文本,我可以在其中遇到元素。如果使用Syste

我有字符串s,它看起来:

<root><p>hello world</p>&nbsp;my name is!</root>
如您所见,我希望加载包含所有元素的字符串,如,并使其成为视图。但我有一个XmlException:

对未申报的替代品的参考

有没有办法把它做好

补充
提供了一个好主意:将我的字符串放入标记中,但不幸的是,这并不能解决我的问题。我有一个很大的字符串,上面有很多标签和一些大的文本,我可以在其中遇到元素。如果使用System.Web.HttpUtility.HtmlCode,我将丢失所有这些元素并获取字段。

我认为您应该将字符串放入CDATA块,如下所示:

<root><![CDATA[<p>hello world</p>&nbsp;my name is!]]></root>

使用System.Web.HttpUtility.HtmlCode或System.Net.WebUtility.HtmlCode来响应添加的部分。你得到的空白字段是渲染时的正确表示。xml中使用的正确编码为&160;[].


如果您确实想查看字符串加载到XDocument的时间,请尝试使用&;对符号和字符进行编码;。替换为&;nbsp;[]。

但是如果我的字符串包含大量的标记和成吨的文本,我可以在其中遇到元素,我该怎么办呢?那又有什么问题呢?在CDATA中无法正确解析它?是的!我把字符串放在开头,把]]>放在结尾。当我在第页上查看时,我会在所显示元素的末尾看到]]>。我想你会同意我的观点,它不应该在那里。
<root><![CDATA[<p>hello world</p>&nbsp;my name is!]]></root>