ChangeTracking 项目推荐
ChangeTracking Track changes in POCO objects 项目地址: https://gitcode.com/gh_mirrors/ch/ChangeTracking
项目基础介绍和主要编程语言
ChangeTracking 是一个开源项目,专注于在 .NET 环境中实现对象和集合的变更跟踪。该项目主要使用 C# 编程语言,适用于 .NET Framework 4.5 及以上版本以及 .NET Standard 2.0。通过使用 Castle Dynamic Proxy 在运行时创建代理类,ChangeTracking 能够无缝地为普通旧 CLR 对象(POCO)和集合添加变更跟踪功能。
项目核心功能
ChangeTracking 的核心功能包括:
-
自动变更跟踪:通过调用
AsTrackable()
扩展方法,可以为 POCO 对象和集合启用自动变更跟踪。所有可跟踪的 POCO 对象实现了IChangeTrackable<T>
、IRevertibleChangeTracking
、IChangeTracking
、IEditableObject
和INotifyPropertyChanged
接口。 -
变更状态管理:支持变更状态的管理,包括
Unchanged
、Added
、Changed
和Deleted
状态。用户可以获取原始值、接受或拒绝变更,并查看变更的属性。 -
集合变更跟踪:支持对集合的变更跟踪,包括添加、删除和修改操作。集合实现了
IChangeTrackableCollection<T>
、IBindingList
、ICancelAddNew
、INotifyCollectionChanged
、IList<T>
、IList
、ICollection<T>
、ICollection
和IEnumerable<T>
接口。 -
属性排除:可以通过
DoNotTrack
属性标记来排除特定属性或类的变更跟踪。
项目最近更新的功能
ChangeTracking 项目最近的更新包括:
-
性能优化:对变更跟踪的性能进行了优化,减少了运行时的开销。
-
扩展方法增强:增加了更多的扩展方法,使得用户可以更方便地操作和查询变更跟踪的状态。
-
文档更新:更新了项目的文档,增加了更多使用示例和 API 说明,帮助用户更好地理解和使用 ChangeTracking。
-
Bug 修复:修复了之前版本中存在的一些 Bug,提升了项目的稳定性和可靠性。
通过这些更新,ChangeTracking 项目在功能和性能上都有了显著的提升,为用户提供了更加强大和易用的变更跟踪解决方案。
ChangeTracking Track changes in POCO objects 项目地址: https://gitcode.com/gh_mirrors/ch/ChangeTracking
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考