如何在XDocument上使用SetElementValue

时间:2013-03-04 14:09:10

标签: c# xml linq-to-xml

这是我的xml的样本

<?xml version="1.0"?>
<SearchHistory>
    <Search>
        <title>Text 1</title>
        <count>0</count>
    </Search>
    <Search>
        <title>Text 2</title>
        <count>0</count>
    </Search>
</SearchHistory>

我想更改文字1

计数的值

这是我试过的:

xdoc.Descendants("Search")
    .Where(x => x.Element("title").Value == tbSearch.Text)
    .Single().SetElementValue("count", curCount);

2 个答案:

答案 0 :(得分:3)

您必须在进行更改后保存XDocument

xDoc.Save(fileName);

答案 1 :(得分:0)

xdoc.Descendants("Search")
    .Where(x => x.Element("title").Value == tbSearch.Text)
    .Single()
    .Descendants("count")
    .Single()
    .Value = "1";