с участием

от же вопрос, что и:Явные теги закрытия элемента с пространством имен System.Xml.Linq

но я использую Net 4.0 и ответы больше не работают.

Проблема в том, что я действительно сохраняю теги без значений, и мой выходной XML выглядит так:

<field/>

Но мне нужно всегда открывать и закрывать тег, т.е.

<field></field>

ВОПРОС: как это сделать?

Правки1

Добавление пустых узлов:

if (field_xml == null) // always true, because I create the file for the first time
{
    field_xml = new XElement(XMLKeys.field,String.Empty);
    table_xml.Add(field_xml);
}
field_xml.SetAttributeValue(XMLKeys.name, field_info.Name);
// ... setting some other attributes of this node

и позже, сохраняя XML:

var writer = new FullEndingXmlTextWriter(parameters.OutputFilename, Encoding.UTF8);
root_xml.Save(writer);

FullEndingXmlTextWriter - это специализированный класс, на который указал Evil Greebo (предполагается, что он должен вызывать явный закрывающий тег).

Ответы на вопрос(4)

Ваш ответ на вопрос