Csharp/C#教程:未定义的实体和XML解析exception分享


未定义的实体和XML解析exception

我试图在声明中定义non breaking space entity 。 代码:

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" [  ] />  .. .... 

但是当我从上面的文档创建一个XDocument对象时,我得到一个例外

 Undefined entity &nbsp. 

我做错了什么?

首先, "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" [ ]的外部和内部实体的组合是不必要的,因为https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd包括www.w3.org/TR/xhtml1/DTD/xhtml-lat1.ent ,其中包括这与你的完全一样。

那个位应该只是:

  

其次,XDocument默认不对DTD进行validation。 但是,您可以使用适当的设置从XmlValidatingReaderXmlTextReader Load

如果可能的话, [如果不可能,那就让它成为可能!]将XmlReader设置为使用XmlPreloadedResolver是一个好主意,因为有很多人在该DTD的URI和它包含的.ent文件中击中了糟糕的’W3C’,并且他们完全可以使用它的本地副本(“完全没问题”,我的意思是如果每个人都停止锤击他们的服务器,他们真的很高兴)。 除了对他们有益之外,它对你来说要快得多。

您可以尝试使用此实体  代替。

上述就是C#学习教程:未定义的实体和XML解析exception分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!

本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

ctvol管理联系方式QQ:251552304

本文章地址:https://www.ctvol.com/cdevelopment/1028063.html

(0)
上一篇 2022年1月10日
下一篇 2022年1月10日

精彩推荐