2011-12-21 5 views
1

Veuillez noter que je suis très nouveau sur .NET et ASP.NET.Validation de la chaîne XML dans VB.NET

J'ai un script qui tente de charger du texte XML à partir d'une URL et j'ai du mal à comprendre comment vérifier si le XML est normalisé et valide. Je n'ai pas de schéma car il y a plusieurs variables qui pourraient changer le format XML, je veux juste vérifier pour m'assurer que toutes les balises d'ouverture sont correctement fermées afin que je puisse vérifier que toute la chaîne est correctement chargée. Voici ce que j'ai en ce moment.

Dim objResponse As HttpWebResponse 
Dim objRequest As HttpWebRequest 
Dim strXml As String 
Dim newMembers As New DataSet 
Dim xmlReader As StringReader 

'get xml from current file 
objRequest = HttpWebRequest.Create(xmlurl) 
objResponse = objRequest.GetResponse() 

Using sr As New StreamReader(objResponse.GetResponseStream()) 
    strXml = sr.ReadToEnd() 
    sr.Close() 
End Using 

'I would like to add something here to validate strXML 

' create a dataset from the XML file pulled down from the remote server 
newMembers = New DataSet() 
xmlReader = New System.IO.StringReader(strXml) 
newMembers.ReadXml(xmlReader) 

Répondre

0

Vous pouvez utiliser la méthode XmlDocument.Load et, en cas d'échec, vous pouvez supposer que ce n'est pas du code XML valide.

XmlDocument.Load Method (Stream)

+0

Merci - Je viens d'ajouter un peu plus de code que les gens puissent voir comment il a été consommé. La méthode DataSet ReadXML devrait-elle faire la même chose? – unclesol

+0

@unclesol - Je le crois. ReadXml doit échouer si la source est XML non valide. – zeroef

1

Créer un objet XmlDocument et appeler la méthode LoadXml là-dessus. Si les balises ne sont pas correctement construites, une exception sera levée.

Dim xDoc As New XmlDocument() 
xDoc.LoadXml(strXml) 
2
dim x = System.Xml.Linq.XDocument.Parse("<xml><valid_tag /></xml>") 

si votre xml n'est pas valide, une exception est levée.

Ou bien:

dim x = System.Xml.Linq.XDocument.Load("path_to_xml_file") 

Même comportement