从两个 XmlSerializer 输出获取增量
我正在编写一个审核日志,用于保存相同类型的两个序列化对象之间的增量。有没有一种方法可以轻松删除具有相同值的节点并保留发生变化的节点?
StreamWriter oldData = new StreamWriter();
StreamWriter newData = new StreamWriter();
XmlSerializer xmlOld = new XmlSerializer(typeof(MyClass));
XmlSerializer xmlNew = new XmlSerializer(typeof(MyClass));
xmlOld.Serialize(oldData, obj);
xmlNew.Serialize(newData, obj);
谢谢。
I'm writing an audit log that saves the delta between two serialized objects of the same type. Is there a way to easily prune out nodes that have the same value and leave the ones that changed?
StreamWriter oldData = new StreamWriter();
StreamWriter newData = new StreamWriter();
XmlSerializer xmlOld = new XmlSerializer(typeof(MyClass));
XmlSerializer xmlNew = new XmlSerializer(typeof(MyClass));
xmlOld.Serialize(oldData, obj);
xmlNew.Serialize(newData, obj);
Thanks.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
Microsoft 提供了一个非常易于使用的工具“XMLDiffPatch”,并将提供您正在寻找的输出。这是一个方便的小指南。
http://msdn.microsoft.com/en-us/library/aa302294.aspx 基本上,
您将使用该工具来确定应该从两个项目中删除哪些内容,然后从那里开始。
Microsoft provides a tool 'XMLDiffPatch' that is pretty easy to use, and will provide the output that you are looking for. Here is a handy little guide for it.
http://msdn.microsoft.com/en-us/library/aa302294.aspx
Basically you will use the tool to identify what you should drop out from your two items and then go from there.