2009-03-24 18 views
2

Ich möchte dem XML-Wurzelknoten ein Namespacepräfix hinzufügen und habe einen Eintrag von Scott Hanselman gefunden, der genau beschreibt, was ich erreichen möchte. Das einzige Problem ist die Implementierung fehlt!Präfix zu XML Root Node hinzufügen - Implementierung von Scott Hanselmans Vorschlag?

Modifying the namespace PREFIX of the root node of the body of a SOAP Web Services Response....whew!

Es wäre eine große Hilfe sein, wenn ich ein paar Leitungen, wie um dies zu realisieren konnte.

  1. Gibt es eine Implementierung, die irgendwo existiert?

  2. Der Eintrag von Scott wurde im Jahr 2003 veröffentlicht. Haben sich die Dinge seitdem geändert? Mit .NET 3.5 herum, sind Soap Extensions immer noch der richtige Ansatz?

EDIT: Aktuelles Web-Service-Response ist so etwas wie ...

<response> 
    <my-ns:name/> 
</response> 

gewünschte Antwort sollte wie folgt aussehen ...

<my-ns:response> 
    <my-ns:name/> 
</my-ns:response> 
+0

Bitte sagen Sie, was Sie erreichen möchten. Warum ist das Präfix wichtig? Ich glaube auch nicht, dass SoapExtensions von Anfang an notwendig war - siehe http://msdn.microsoft.com/en-us/library/system.xml.serialization.xmlnamespacedeclarationsattribute.aspx. –

+0

@John, Das Präfix nicht und sollte nicht wichtig sein, aber es ist eine "Client" -Anforderung, die man erfüllen muss. Wenn Sie den Eintrag von Scott lesen, erwähnt er genau das. – Preets

+1

Scott sagt:> Wenn Sie den Code wollen, und gehen Sie zu > Hölle, mailen Sie mir [hier] (http://2idi.com/contact/=scott.hanselman), das ist wahrscheinlich die beste Route, wenn nein man hat irgendwelche Ideen. –

Antwort

1

scheint, wie das Problem mit dem fehlenden Namespace Präfix für den Stammknoten existiert nur für .NET Framework 1.1!

Ich habe den Code in .NET 3.5 migriert und das "my-ns:" Namespacepräfix wurde zum Stammknoten hinzugefügt, ohne dass ich irgendeinen Code ändern musste! Ich müsste also keine Soap Extension schreiben!

+0

Haben Sie es in .NET 2.0 ausprobiert? – Cerebrus

+0

Nein, nicht 2.0, ich habe 3.5 versucht! Aber ich denke, das sollte es sein, wenn man berücksichtigt, dass auch Sie das Präfix im Wurzelknoten haben. – Preets

+0

Es gibt Code-Attribute für die Angabe des Namensraums des Response-Elements. – Cheeso