I m 为内容管理系统开发一个班级。 投入内容以X超文本格式提供。 并且可以包含诸如<代码>&第163号;等有效的越生特性。 见下文。
<html xml:lang="en" lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head xmlns="">
<meta name="Attr_DocumentTitle" content="Hello World Books" />
</head>
<body>
<div>British Pound £</div>
<div>Registered sign ®</div>
<div>Copyright sign © </div>
</body>
</html>
我的目标是用一种方法把这种方法装上XML。 净物体进行一些处理,并节省了数据库。 我想保持其越狱的性质。 我的方法是:
public static XmlDocument LoadXmlFromString(string xhtmlContent)
{
byte[] xhtmlByte = Encoding.ASCII.GetBytes(xhtmlContent);
MemoryStream mStream = new MemoryStream(xhtmlByte);
XmlReaderSettings settings = new XmlReaderSettings();
//Upon loading XML, prevent DTD download, which would be blocked by our
//firewall and generate "503 Server Unavailable" error.
settings.XmlResolver = null;
settings.ProhibitDtd = false;
XmlReader reader = XmlReader.Create(mStream, settings);
XmlDocument xmlDoc = new XmlDocument();
xmlDoc.LoadXml(xhtmlContent);
return xmlDoc; //Value of xmlDoc.InnerXml contains £ ® © in place
// of £ ® and ©
}
然而,这种方法将越狱的品格转换为同类物。 我如何能够避免这种情况,保持越狱的风气。