ERLEDIGT
NEIN
NEIN
ANTWORTEN
3
3
ZUGRIFFE
759
759
EMPFEHLEN
-
hallo,
ich möchte ein XML-Dokument mit einem festen XSD-Dokument gleichen Namens validieren. Dabei soll die im XML angegebene XSD-Datei ignoriert werden.
Bisher versuche ich das folgende:
_xmlFilepath = Pfad zur XML-Datei
_schemapath = Pfad zur XSD Datei
Leider kommt auch bei einem File, dessen Elementlängen weit über den MaxLengths der Elemente Liegen immer true raus.Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
XmlValidatingReader validator = new XmlValidatingReader( new XmlTextReader( _xmlFilepath ) ); //Schema collection zum uberprufen XML Datei XmlSchemaCollection schemaCol = new XmlSchemaCollection(); //schema bestimmen schemaCol.Add( null, new XmlTextReader( _schemapath )); validator.ValidationType = ValidationType.Schema; validator.Schemas.Add( schemaCol ); try { while( validator.Read() ); return true; } catch return false
Kann mir jemand sagen, wo mein Fehler ist?
Tschau und Danke
Dirk
-
29.11.05 20:55 #2
- Registriert seit
- Dec 2003
- Ort
- Oberursel bei Frankfurt a.M.
- Beiträge
- 69
Hallo,
ich habe ebenfalls einmal vor dem Problem der Validierung einer Xml Datei anhand einer XSD Datei gestanden.
Hier ist meine Version für .Net 2.0
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42
public class SchemaValidator { private bool isValid = true; private String xsdfilename; public SchemaValidator(String filename) { xsdfilename = filename; } public bool Validate(string filename) { isValid = true; XmlReaderSettings settings = new XmlReaderSettings(); settings.Schemas.Add(null, xsdfilename); settings.ValidationType = ValidationType.Schema; settings.ValidationEventHandler += new ValidationEventHandler(ValidationCallBack); settings.ValidationFlags = XmlSchemaValidationFlags.ReportValidationWarnings; XmlReader reader = XmlReader.Create(filename, settings); try { while (reader.Read()) ; } catch { isValid = false; } reader.Close(); return isValid; } private void ValidationCallBack(object sender, ValidationEventArgs e) { isValid = false; } }
mfg,
Jens
-
Danke für die Antwort.
Leider muss ich mit 1.1 arbeiten. Ich werde morgen mal probieren, ob es auch unter 1.1 so funktioniert.
Ich werde dann die Ergebnisse berichten.
Edit:
Leider scheint der XmlReaderSettings eine Neuerung des .Net 2.0 zu sein.
Ich wäre also zu hinweisen für 1.1 dankbar
Tschau
DirkGeändert von dila71 (30.11.05 um 14:17 Uhr)
-
30.11.05 22:23 #4
- Registriert seit
- Dec 2003
- Ort
- Oberursel bei Frankfurt a.M.
- Beiträge
- 69
Ja ist für .Net 2.0, da XmlValidatingReader als obsolete gesetzt wurde.
Hier ist ein Link zur MSDN mit dem entsprechenden Beispiel für 1.1
MSDN
mfg Jens
Ähnliche Themen
-
WPF / Validieren einer Textboxeingabe?
Von keks1984 im Forum .NET WPF & SilverlightAntworten: 10Letzter Beitrag: 17.01.08, 09:33 -
Fehler beim validieren einer XML mit einer XSD
Von MiMi im Forum XML TechnologienAntworten: 6Letzter Beitrag: 16.01.08, 12:12 -
Mit JDOM XML-Datei gegen XML-Schema validieren
Von mmueller78 im Forum JavaAntworten: 1Letzter Beitrag: 17.08.07, 14:15 -
Große XML-Datei validieren
Von lubu im Forum JavaAntworten: 4Letzter Beitrag: 08.05.07, 17:35 -
Datei validieren
Von CodeFatal im Forum C/C++Antworten: 1Letzter Beitrag: 08.03.07, 14:45





Zitieren
Login





