Я просто пытаюсь сделать свой XML немного более аккуратным и менее громоздким. Я знаю, что в C # можно сделать что-то вроде этого:
XNamespace ds = "http://schemas.microsoft.com/ado/2007/08/dataservices";
new XElement(ds + "MyDumbElementName", "SomethingStupid");
И получить XML-аналог этого:
<root>
<MyDumbElementName xmlns="http://schemas.microsoft.com/ado/2007/08/dataservices">
SomethingStupid
</MyDumbElementName>
</root>
Вместо чего-то вроде этого:
<root xmlns:ds="http://schemas.microsoft.com/ado/2007/08/dataservices">
<ds:MyDumbElementName>
SomethingStupid
</ds:MyDumbElementName>
</root>
Очевидно, что вторая версия намного красивее, легче читается и компактна. Есть ли способ сгенерировать XDocument эквивалент компактной версии без вызова Parse ("..." )?
Вы можете рискнуть и ответить «Нет», и в этом случае я считаю, что справедливо ждать ответа от других людей, и если никто не даст достойного ответа, я приму ваш «Нет», в противном случае, если кто-то ответит, я отмечу «Нет». Я надеюсь, что и вам это покажется справедливым.
РЕДАКТИРОВАТЬ: Возможно, мне следует быть более конкретным и сказать, что я хочу иметь возможность использовать несколько пространств имен, а не только одно.