我已经修改了“duyurular.xml”,但是节点<baslik>
非标准且包含价值。
如何更改节点<baslik>
value.
“duyurular.xml”文件结构:
<?xml version="1.0" encoding="utf-8"?>
<duyurular>
<duyuru>
<baslik>Okul Müdürlüğü<kurum>Eğitim-Öğretim</kurum><tarih>11.11.2011-17:17</tarih><url>http://www.example.com/XmlDuyuru.aspx?duyurudetayId=2012581131705</url><duyurudetay>Detay bilgileri One</duyurudetay><id>2012581131705</id></baslik>
<baslik>AB Eğitim ve Gençlik <kurum>ARGE</kurum><tarih>11.11.2011-17:17</tarih><url>http://www.example.com/XmlDuyuru.aspx?duyurudetayId=2012581131701</url><duyurudetay>Detay bilgileri Two</duyurudetay><id>2012581131701</id></baslik>
</duyuru>
</duyurular>
C# 背后的代码:
void xmDuzelt(string idim)
{
string dosyaadi = Server.MapPath("~/xml/") + "duyurular.xml";
XDocument doc = XDocument.Load(dosyaadi);
var q = from duzey1 in doc.Descendants("duyuru")
let elemnt = duzey1.Element("baslik").Element("id")
where elemnt != null && elemnt.Value == idim
select duzey1;
foreach (var item in q)
{
item.Element("baslik").Element("kurum").Value = this.txtKurum.Text;
item.Element("baslik").Element("duyurudetay").Value = this.txtduyurudetay.Value;
}
doc.Save(dosyaadi);
Response.Redirect(Request.Url.ToString());
}
元素和属性照常修改。
Baslik 元素的文本通过以下方式修改:
如果 baslik 元素中的文本计数始终为 1:
var baslik = item.Element("baslik");
var text = baslik.Nodes().OfType<XText>().First();
text.Value = new_baslik_text;
如果为零或一:
var text = baslik.Nodes().OfType<XText>().FirstOrDefault();
if (text != null)
text.Value = new_baslik_text;
else
baslik.AddFirst(new XText(new_baslik_text));
如果零个或多个:
foreach (var text in baslik.Nodes().OfType<XText>().ToArray())
text.Remove();
baslik.AddFirst(new XText(new_baslik_text));
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)