XML-unzulässige Zeichen im Pfad
Ich bin der Abfrage eines soap-basierten Dienst und wünschen zu analysieren, um die zurückgegebenen XML-Code aber wenn ich versuche, das laden der XML in ein XDoc, um die Daten abzufragen. bin immer eine "illegale Zeichen im Pfad" Fehlermeldung? Diese (unten) ist der zurückgegebene XML-Code aus dem service. Ich möchte einfach die Liste von Wettbewerben und legen Sie Sie in eine Liste, die ich eingerichtet haben. Die XML nicht laden in ein XML-Dokument, obwohl, so müssen korrekt formatiert?.
Irgendwelche Ratschläge über den besten Weg, dies zu tun und erhalten Runde den Fehler, wäre sehr dankbar.
<?xml version="1.0" ?>
- <gsmrs version="2.0" sport="soccer" lang="en" last_generated="2010-08-27 20:40:05">
- <method method_id="3" name="get_competitions">
<parameter name="area_id" value="1" />
<parameter name="authorized" value="yes" />
<parameter name="lang" value="en" />
</method>
<competition competition_id="11" name="2. Bundesliga" soccertype="default" teamtype="default" display_order="20" type="club" area_id="80" last_updated="2010-08-27 19:53:14" area_name="Germany" countrycode="DEU" />
</gsmrs>
Hier ist mein code, ich muss in der Lage sein, um die Daten abzufragen, die in einer XDoc:
string theXml = myGSM.get_competitions("", "", 1, "en", "yes");
XmlDocument myDoc = new XmlDocument();
MyDoc.LoadXml(theXml);
XDocument xDoc = XDocument.Load(myDoc.InnerXml);
InformationsquelleAutor der Frage Kevin | 2010-10-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du nicht zeigen Sie Ihre source-code, aber ich denke, was du tust, ist dies:
Den
Load
Methode erwartet ein Dateiname nicht XML selbst. Zum laden einer tatsächlichen XML, benutzen Sie einfach dieLoadXml
Methode:Ähnlich, mit
XDocument
dieLoad(string)
Methode erwartet ein mit dem Namenkeine eigentliche XML. Es gibt jedoch keineLoadXml
Methode, so dass die richtige Art und Weise des Ladens der XML-Code aus einer Zeichenfolge wie diese:Als eine Angelegenheit von Tatsache, wenn die Entwicklung etwas, es ist eine sehr gute Idee um die Aufmerksamkeit auf die Semantik (Bedeutung) von Parametern, die nicht nur Ihre Arten. Wenn der Typ des Parameters ist eine
string
es bedeutet nicht, man kann feed-in einfach alles, was ein string ist.Auch in Bezug auf Ihre aktualisierte Frage, macht es keinen Sinn
XmlDocument
undXDocument
zur gleichen Zeit. Wählen Sie eine oder das andere.InformationsquelleAutor der Antwort Ondrej Tucny
Folgenden bis auf Ondrej Tucny Antwort :
Wenn Sie verwenden möchten, um eine xml-Zeichenfolge verwenden Sie stattdessen ein XElement, und rufen Sie die "parse" - Methode. (Da für Ihre Bedürfnisse, XElement und XDocument würde Ihre Anforderungen erfüllen)
Beispielsweise ;
Den XElement-Parse-Methode können Sie übergeben Sie ein XML-string, die während der Load-Methode muss eine Datei namens.
InformationsquelleAutor der Antwort Harvey Darvey
Wenn das wirklich Ihre Ausgabe ist es illegal, XML-da das minus-Zeichen ('-'). Ich vermute, dass Sie geschnitten und geklebt, diese mit einem browser wie IE. Sie müssen mit der genauen XML-Code aus einer text-editor, nicht mit einem browser.
InformationsquelleAutor der Antwort peter.murray.rust
Warum nicht
Ich nehme an, dies wird die richtige Lösung sein
InformationsquelleAutor der Antwort Swaraj