我想引发一个事件以防止对Xml文件进行任何修改。
简单地举办活动就足够了?像
XElement doc = XElement.Load(@"d:\XMLFiles\namespace.xml");
doc.Changed +=new EventHandler<XObjectChangeEventArgs>(doc_Changed);
我需要在doc_changed(..,...)
内编写什么代码来回滚任何修改?
static void doc_Changed(object sender, XObjectChangeEventArgs e)
{
//what is the code needed here..?
}
答案 0 :(得分:2)
您应订阅Changed
,而不是订阅Changing
,以便在发生之前通知。
防止更改的最简单方法是抛出异常......但这是一种非常严厉的处理方式。你真的想要阻止什么情况?由于开发人员不理解本文档是只读的,会导致意外更改?