Ich versuche, Elementwerte aus einem einfachen XML-Dokument einzulesen und diese an ein Objekt zu binden, aber ich stoße auf Probleme mit meinem XML-Dokument. Ich habe es überprüft und kann bestätigen, gibt es keine Probleme mit dem Dokument selbst jedoch die Ergebnisse auf der Linie erweitert:Problem beim Deserialisieren von XML zum Objekt - Es gibt einen Fehler im XML-Dokument (0, 0)
var nodes = from xDoc in xml.Descendants("RewriteRule")
select xmlSerializer.Deserialize(xml.CreateReader()) as Url;
anzeigen „Es ist ein Fehler in XML-Dokument (0, 0)“
Die innere Ausnahmen liest <RewriteRules xmlns=''> was not expected.
Ich bin mir nicht sicher, was ich hier falsch mache?
Meine XML ist unter:
<?xml version="1.0" encoding="utf-8" ?>
<RewriteRules>
<RewriteRule>
<From>fromurl</From>
<To>tourl</To>
<Type>301</Type>
</RewriteRule>
</RewriteRules>
Der Code, der die XML-Datei lädt und versucht, es zu zu deserialisieren: -
public static UrlCollection GetRewriteXML(string fileName)
{
XDocument xml = XDocument.Load(HttpContext.Current.Server.MapPath(fileName));
var xmlSerializer = new XmlSerializer(typeof(Url));
var nodes = from xDoc in xml.Descendants("RewriteRule")
select xmlSerializer.Deserialize(xml.CreateReader()) as Url;
return nodes as UrlCollection;
}
Meine URL Objektklasse: -
[Serializable]
[XmlRoot("RewriteRule")]
public class Url
{
[XmlElement("From")]
public string From { get; set; }
[XmlElement("To")]
public string To { get; set; }
[XmlElement("Type")]
public string StatusCode { get; set; }
public Url()
{
}
public Url(Url url)
{
url.From = this.From;
url.To = this.To;
url.StatusCode = this.StatusCode;
}
}
Kann jemand sehen, was ich hier falsch mache?
Dank
Dig in die Basis Ausnahme, die das verursacht. – leppie