Ich hatte heute mit einem kleinen XML Problem zu kämpfen. Bei der Generierung des XMLs trat der oben genannte Fehler auf. Problemlösung in kurz: "&”, "<” & ">” maskieren wenn man InnerXml setzt oder "vollständiges” Xml Element setzen.
Problemfall:
class Program
{
static void Main(string[] args)
{
XmlDocument doc = new XmlDocument();
XmlElement element = doc.CreateElement("element");
element.InnerXml = "hello & good bye";
}
} static void Main(string[] args)
{
XmlDocument doc = new XmlDocument();
XmlElement element = doc.CreateElement("element");
element.InnerXml = "hello <test></test> good bye";
}Eigentlich völlig logisch. Problematisch wird es nur wenn man z.B. HTML Markup wie "<br/>” und vom User eingegebene Texte (wo auch ein "&” oder "<” drin stehen könnte) auftauchen. Da die Fehlermeldung mir recht nichtsagend war, hab ich mir gedacht es zu bloggen. :)