如何在XML中删除节点,如果我有属性ID和值,如果节点在该专辑ID下
本文关键字:ID 节点 如果 和值 属性 专辑 删除 XML | 更新日期: 2023-09-27 18:19:33
<Albums>
<Album ID="ankit">
<AlbumName>Jaipur Tour</AlbumName>
<AlbumName>Shimla Tour</AlbumName>
<AlbumName>Andaman Tour</AlbumName>
<AlbumName>France Tour</AlbumName>
</Album>
<Album ID="amit">
<AlbumName>Goa Tour</AlbumName>
<AlbumName>China Tour</AlbumName>
<AlbumName>Panama Tour</AlbumName> // delete this node
<AlbumName>Europe Tour</AlbumName>
</Album>
</Albums>
要从相册中删除相册.xml其中给出了用户 ID 并在该用户 ID 下给出了专辑名称
var qryAlbum = from element in loadAlbum.Descendants("Album")
where (string)element.Attribute("ID") == UIDLabel.Text
select element;
qryAlbum.Descendants("Album").Elements("AlbumName").Where(x => x.Value == albumSelected).Remove();
loadAlbum.Save(@"D:'PhotoFrame'Album.xml");
您需要选择要删除的元素。
var element = loadAlbum.Descendants("AlbumName")
.Where(x => x.Value == "Panama Tour"
&& x.Parent.Attribute("ID").Value == "amit" )
.FirstOrDefault();
if (element != null)
{
element.Remove();
loadAlbum.Save(@"file.xml");
}
编辑:替换text
if (element != null)
{
element.Value = "New Value";
loadAlbum.Save(@"file.xml");
}