Я использую Linq для XML, чтобы добавить XElement в свой файл. В найденном этом решении Adding XElement to XML file using Linq to XML и я делаю это подобное.Добавление XElement в файл XML
МОЯ XML
<?xml version="1.0" encoding="utf-8"?>
<Kostenstellen>
<Kostenstelle id="111002">
<Kennung>SK_5232</Kennung>
<Kennung>HS_2322</Kennung>
<Kennung>SK_5232</Kennung>
</Kostenstelle>
<Kostenstelle id="111004">
<Kennung>SK_5232</Kennung>
</Kostenstelle>
<Kostenstelle id="123123">
<Kennung>SK_2312</Kennung>
</Kostenstelle>
</Kostenstellen>
C#
string kostenstelle = "1111111";
var costXML = XElement.Load(Settings1.Default.XMLPath);
var newChild = new XElement("Kostenstelle", new XAttribute("id", kostenstelle));
costXML.Add(newChild);
costXML.Save(Settings1.Default.XMLPath);
Результат XML должен быть
<?xml version="1.0" encoding="utf-8"?>
<Kostenstellen>
<Kostenstelle id="111002">
<Kennung>SK_2222</Kennung>
<Kennung>HS_2222</Kennung>
<Kennung>SK_2222</Kennung>
</Kostenstelle>
<Kostenstelle id="111004">
<Kennung>SK_2222</Kennung>
</Kostenstelle>
<Kostenstelle id="123123">
<Kennung>SK_2222</Kennung>
</Kostenstelle>
<Kostenstelle id="111111">
</Kostenstelle>
</Kostenstellen>
Но, к сожалению, она не будет работать какие-нибудь идеи?
Спасибо за Ваш ответ
Kai
Update: Моя проблема в том, что процесс добавления работает отлично. Но когда я хочу сохранить изменения, ничего не происходит. не выдает исключения.
costXML.Save(Settings1.Default.XMLPath);
Пока вы объяснили, что вы пытаетесь сделать и как, вы не объяснили, в чем проблема вашего переживания. Например, вы получаете исключение при запуске кода? Или результат просто не то, что вы ожидаете? Пожалуйста, уточните свой вопрос с дополнительной информацией. – Adrian
Отсутствует декларация 'costXML', здесь здесь очень важно. Не могли бы вы добавить это в свой пример кода? –
Он выкинет исключение, если что-то не так ... куда идет ваш путь? – Tyress