xmlns aus InfoPath-Dokument auslesen

25/07/2009 - 22:53 von Maximilian Tescher | Report spam
Hallo zusammen,

sorry das ich nochmals einen neuen Tread öffne, aber auf Grund das
mein erster Lösungsweg nicht funktioniert, muss ich das ganze nochmals
neu aufrollen (ist als Anfànger einfacher :-) )

Ich habe mir die auszulesenden XML-Dateien angeschaut und habe
festgestellt, dass ich mit bis zu drei verschiedenen Definitionen für
xmlns zu tun habe.

Da ich im Dokument bestimmte Inhalte prüfen und so feststellen kann
das richtige Dokument zu haben, möchte ich gerne unabhàngig die
Angaben zum xmlns auslesen, dies dann spàter als namespace hinzufügen
um dann über die Angaben wie mytag:dokname etc auslesen zu können.

Ich hatte sowas schon mal gesehen, aber ich finde es jetzt nicht mehr.

Da ich InfoPath-Dokumente habe, muss ich vermutlich mit XDocument
arbeiten, zudem muss ich Angaben im Dokument geàndert wieder
schreiben.

Könntet Ihr mir nochmal aufzeigen wie ich die Angaben zu xmlns
auslesen und als namespace zum auslesen der anderen Angaben verwenden
kann?

Wàre Euch sehr dankbar.


Viele Grüsse,
Maxi
 

Lesen sie die antworten

#1 Martin Honnen
26/07/2009 - 12:38 | Warnen spam
Maximilian Tescher wrote:

Könntet Ihr mir nochmal aufzeigen wie ich die Angaben zu xmlns
auslesen und als namespace zum auslesen der anderen Angaben verwenden
kann?



Das folgende Beispiel liest den Namensraum des Wurzelelementes aus und
benutzt diesen dann in einer Anfrage:

Dim doc As XDocument = _
<?xml version="1.0"?>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">
<head>
<title>Beispiel</title>
</head>
<body>
<h1>Beispiel</h1>
</body>
</html>

Dim ns1 As XNamespace = doc.Root.Name.Namespace

Dim h1 As XElement = doc.Descendants(ns1 + "h1").FirstOrDefault()

If h1 IsNot Nothing Then
Console.WriteLine(h1.Value)
End If






Martin Honnen MVP XML
http://msmvps.com/blogs/martin_honnen/

Ähnliche fragen