Префикс «нельзя переопределить с» на <url> в том же теге начального элемента
Я пытаюсь создать следующий элемент XML с использованием C #.
<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">
Проблема, с которой я столкнулся, заключается в том, что я получаю исключение: префикс «не может быть переопределен с» внутри того же тега начального элемента. Это мой код C #:
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"));
Как я могу это исправить? Я пытаюсь отправить сгенерированный XML как тело сообщения SOAP, и мне нужно, чтобы он был в этом формате для получателя.
РЕДАКТИРОВАТЬ: я нашел свой ответ на другой вопрос.Управление порядком пространств имен XML