在我的应用程序中,我将所有数据存储在静态列表 AllData 中,它继承自;
public class GenericList<T> : BindingList<T>, IList<T>
我将用户的更改设置为 AllData 的所选项目,我的问题是取消更改。如果用户取消更改,我将再次从数据库中检索所有数据。这不是一个有用的解决方案;这需要时间,创建新的数据库连接等。
我认为在更改之前我已经有了旧值。我可以备份第一个值,如果用户取消更改,则恢复备份值。问题来了;我尝试通过 ObjectCopier 类
克隆 AllData 的所选项目public static T Clone<T>(T source)
,并收到错误
类型'类XYZ'未标记为可序列化。
是的,我有几个序列化类,其他类没有序列化。我正在尝试克隆的 AllData 所选项目包含我创建的所有数据类型。
我应该把所有课程都归类吗?如是;这会导致任何问题(安全性,性能等)吗?还是有任何有用的取消操作方法?