O prefixo "não pode ser redefinido de" para <url> na mesma tag do elemento inicial

Estou tentando gerar o seguinte elemento xml usando 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">

O problema que estou tendo é que recebo a exceção: O prefixo "não pode ser redefinido de" para dentro da mesma tag do elemento inicial. Este é o meu código 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"));

Como posso consertar isso? Estou tentando enviar o xml gerado como o corpo de uma mensagem SOAP e preciso que ele esteja nesse formato para o destinatário.

EDIT: Encontrei minha resposta em outra pergunta.Controlando a ordem dos namespaces XML

questionAnswers(1)

yourAnswerToTheQuestion