Das Präfix „kann nicht neu definiert werden von“ bis <url> innerhalb desselben Startelement-Tags

Ich versuche, das folgende XML-Element mit C # zu generieren.

<Foo xmlns="http://schemas.foo.com" 
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
 xsi:schemaLocation="http://schemas.foo.com
 http://schemas.foo.com/Current/xsd/Foo.xsd">

Das Problem, das ich habe, ist, dass ich die Ausnahme erhalte: Das Präfix "kann nicht neu definiert werden von" innerhalb des gleichen Startelement-Tags. Dies ist mein C # -Code:

XNamespace xsi = "http://www.w3.org/2001/XMLScema-instance"
XElement foo = new XElement("Foo", new XAttribute("xmlns", "http://schemas.foo.com"),
                                   new XAttribute(Xnamespace.Xmlns + "xsi", "http://www.w3.org/2001/XMLSchema-instance"),
                                   new XAttribute(xsi + "schemaLocation", "http://schemas.foo.com http://schemas.foo.com/Current/xsd/Foo.xsd"));

Wie kann ich das beheben? Ich versuche, die generierte XML als Text einer SOAP-Nachricht zu senden, und ich muss sie für den Empfänger in diesem Format haben.

EDIT: Ich habe meine Antwort auf eine andere Frage gefunden.Steuern der Reihenfolge von XML-Namespaces

Antworten auf die Frage(1)

Ihre Antwort auf die Frage