我有一个XDocument,其中包含这样的XElement:
<PageContent>
<Text>My Text</Text>
<Image>image.jpg</Image>
</PageContent>
我想找到文本元素并更新其值。我已经使用了一些LINQ,但它返回的是值而不是允许我更新XElement和XDocument。
我有一个XDocument,其中包含这样的XElement:
<PageContent>
<Text>My Text</Text>
<Image>image.jpg</Image>
</PageContent>
我想找到文本元素并更新其值。我已经使用了一些LINQ,但它返回的是值而不是允许我更新XElement和XDocument。
你不能在单个LINQ语句中完成它 - LINQ是关于查询的,而你正在进行更新。你应该使用LINQ查询要更新的元素,然后在foreach
中遍历列表并应用更改;例如:
var pageContents = doc./* ... */.Elements("PageContents").Where(...);
foreach (var pageContent in pageContents)
{
pageContent.Element("Text").Value = "Foo";
pageContent.Element("Image").Value = "bar.jpg";
}