Ich habe einige WCF-Methoden, die verwendet werden, um Informationen von einer Serveranwendung an ein Website-Frontend für die Verwendung in Bindung zu übertragen. Ich sende das Ergebnis als ein XElement, das ein Stamm einer XML-Struktur ist, die die Daten enthält, an die ich binden möchte.Wie kann man die Gültigkeit von XML aus einer Methode am besten testen?
Ich möchte einige Tests erstellen, die die Daten untersuchen und sicherstellen, dass sie wie erwartet angezeigt werden.
Mein aktuelles Denken ist dies: Jede Methode, die eine XElement-Struktur zurückgibt, hat eine entsprechende Schema (XSD) -Datei. Diese Datei ist in der Assembly enthalten, die meine WCF-Klassen als eingebettete Ressource enthält.
Tests rufen die Methode für diese Methoden auf und vergleichen das Ergebnis mit diesen eingebetteten Schemas.
Ist das eine gute Idee? Wenn nicht, welche anderen Möglichkeiten kann ich verwenden, um eine "Garantie" dafür zu geben, welche Art von XML eine Methode zurückgibt?
Wenn ja, wie validiert man ein XElement gegen ein Schema? Und wie kann ich dieses Schema von der Assembly erhalten, in der es eingebettet ist?
element.GetSchemaInfo() gibt den Wert null. – Will
Ich habe nicht die Validate-Methode für das XDocument, dies ist eine Erweiterung Methode aus welchem Namespace? –
für alle, die auch nach dem Namensraum suchen: using System.Xml.Schema; –