在对XML树进行修改的时候,LINQ to XML事件会提供通知,LINQ to XML提供了2个事件来响应XML树的修改:Changing和Changed.当修改XML树时这2个时间会相继被触发.从运行结果我们可以看出,更新动作实际上是一个删除操作加上一个添加完成的:
using System;
using System.Xml.Linq;
using System.Linq;
namespace ConsoleApplication1
{
class Program
{
static void Main(string[] args)
{
XElement xel = new XElement(new XElement("Root",
new XElement("Person",
new XElement("Name", "Huang Cong"),
new XElement("Sex","男"),
new XElement("Age",12)))
);
xel.Changing += new EventHandler<XObjectChangeEventArgs>(xel_Changing);
xel.Changed += new EventHandler<XObjectChangeEventArgs>(xel_Changed);
//修改Person元素的Age元素值
xel.Element("Person").SetElementValue("Age", 22);
}
static void xel_Changed(object sender, XObjectChangeEventArgs e)
{
Console.WriteLine("触发Changed事件:");
Console.WriteLine("ChangedValue:{0} \tObjectChange:{1}", ((XNode)sender).ToString(), e.ObjectChange);
Console.WriteLine("------------------------------------");
}
static void xel_Changing(object sender, XObjectChangeEventArgs e)
{
Console.WriteLine("触发Changing事件:");
Console.WriteLine("ChangingValue:{0} \tObjectChange:{1}", ((XNode)sender).ToString(), e.ObjectChange);
Console.WriteLine("------------------------------------");
}
}
}
警告:不允许在被触发事件的执行过程中修改XML树,特别不要在事件中修改触发事件发生的节点,因为这会导致不可预测的结果.不过可以在事件中修改另外一个XML树.
分享到:
相关推荐
LINQ TO SQL ,LINQ TO XML,LINQ中文教程,是强人书写的,制作有点粗糙,但是,是好教材
Linq to xml,读取XMl节点值,linq,读取XMl节点值绑定。
学习LINQ的目前国内现有的最好的资源,有LINQ to xml的精讲,LINQ 的初级,高级学习,是学习LINQ的好资源。
LINQ TO XML操作示例 轻轻松松 学会简单操作 本例子包含了通过LINQ创建XML、加载XML、读取XML、修改XML元素、属性、删除XML元素节点、属性,XML排序,保存XML等 基本上XML的操作都包含在这里面了。 适合学习LINQ...
LINQ To Xml示例程序
使用Linq To XML操作XML.pdf 中文电子文档
LINQ to XML操作XML的代码,通过它很快掌握用内存在对象方式操作XML数据
Linq 大全 Linq To Sql Linq To DataSet Linq To Object Linq to Xml
本书部分介绍了LINQ技术及C#和VB为此提供的新语言特性,第二、三、四部分详细介绍了LINQ的主要功能LINQ to Objects、LINQ to SQL、LINQ to XML,第五部分研究了LINQ的可扩展性、在应用程序中使用各种LINQ功能的方法...
示例描述:本章介绍LINQ to XML相关技术和使用。 CreateSimpleXMLTree 演示通过XElement创建简单的XML树。 CreateAttributeElement 演示通过XElement创建具有属性的XML元素。 CreateSubElement 演示通过...
linq to xml入门的例
简单的linq to xml实例,测试过,可运行
Linq开发宝典 LInq入门宝典 Linq To Xml linq to sql
网上一大堆旧版的XmlHelper,用的实在是不爽,今天发布 Linq to Xml 操作帮助类,新技术,简易操作,说明详细,值得收藏!
LINQ操作XML,对XML的基本操作,包括创建XML、查询、修改、删除等
Linq to xml 简单案例
一个Linq to XML的小练习例程,用linq读取保存和修改xml文件
LINQ to XML 编程基础
使用linq to xml读取xml文件内容
linq to xml使用xquery.