Erstens ist die Kombination von externen und internen Einheiten in "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" [ <!ENTITY nbsp " "> ]
ist nicht erforderlich, da http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd
www.w3.org/TR/xhtml1/DTD/xhtml-lat1.ent
enthält, die <!ENTITY nbsp " ">
enthält, die genau wie Sie das gleiche ist.
dass Bit sollte also nur sein:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
Zweitens XDocument nicht auf eine DTD standardmäßig nicht bestätigen. Sie können jedoch Load
von einer XmlValidatingReader
oder XmlTextReader
mit den entsprechenden Einstellungen
Wenn möglich, [Wenn es nicht möglich ist, macht es möglich!] Es ist eine gute Idee, die XmlReader setzen ein XmlPreloadedResolver
zu verwenden, weil es eine ist Viele Leute schlagen das schlechte alte W3C an der URI dieser DTD und den .ent-Dateien, die es enthält, und sie sind völlig in Ordnung mit dir, indem du eine lokale Kopie davon verwendest (von "total okay" ich meine, sie wären wirklich froh wenn jeder aufhören würde, seinen Server so zu hämmern). Abgesehen davon, dass es gut für sie ist, wird es viel schneller für Sie sein.