除了序列化之外,我只考虑三种选择:
我们有一些控制二进制序列化的代码实例,以便我们可以序列化内部 GUID 表(我们有很多重复的 GUID,并通过 .NET Remoting 序列化非常大的列表)。它对我们来说效果很好,我们不需要第三方序列化框架,但是,它是带有一点代码生成的手工制作的东西。
CSLA.NET框架具有一个名为 的类UndoableBase,它使用反射来序列化Hashtable属性/字段值。用于允许回滚内存中的对象。这可能适合您的“返回原始状态再试一次”这句话。
就我个人而言,我会进一步研究基于反射的(最好使用发出的 IL 以获得更好的性能)解决方案,这样您就可以利用类/成员属性来控制克隆过程。如果性能为王,这可能不会减少它。
| 归档时间: |
|
| 查看次数: |
1544 次 |
| 最近记录: |