文件名称:DeepCloner:NET的快速对象克隆器
文件大小:66KB
文件格式:ZIP
更新时间:2024-06-17 08:39:48
C#
深克隆者 具有扩展功能的库,可为.NET克隆对象。 它可以深层或浅层复制对象。 在深度克隆中,将保留所有对象图。 库在运行时积极使用代码生成,因为结果对象的克隆速度非常快。 另外,还有一些性能技巧可提高克隆速度(请参见下面的测试)。 对象是通过其内部结构进行复制的,而无需调用任何方法或构造函数来克隆对象。 结果,您可以复制任何对象,但是我们不建议您复制绑定到本机资源或指针的对象。 这可能会导致不可预测的结果(但是对象将被克隆)。 您无需以某种方式标记对象,例如Serializable-attribute或将其限制为特定的接口。 绝对可以通过此库克隆任何对象。 而且该对象没有任何能力可以确定他是克隆对象(除非使用非常特定的方法)。 另外,不需要指定用于克隆的对象类型。 对象可以强制转换为接口或抽象对象,可以将int数组克隆为abstract Array或IEnumerable,甚至nul
【文件预览】:
DeepCloner-develop
----DeepCloner()
--------DeepCloner.Core.csproj(1KB)
--------DeepClonerExtensions.cs(2KB)
--------Helpers()
--------DeepCloner.csproj(3KB)
--------Properties()
----LICENSE(1KB)
----deepcloner-nuget-ico.png(1KB)
----DeepCloner.Core.sln(2KB)
----pack.cmd(378B)
----.gitignore(60B)
----README.md(9KB)
----DeepCloner.Tests()
--------InheritanceSpec.cs(7KB)
--------ShallowClonerSpec.cs(4KB)
--------packages.config(1KB)
--------ConstructorsSpec.cs(3KB)
--------CloneExtensionsSpec.cs(3KB)
--------DeepCloner.Tests.Core.csproj(3KB)
--------Objects()
--------Imported()
--------BaseTest.cs(404B)
--------LoopCheckSpec.cs(1KB)
--------PerformanceSpec.cs(10KB)
--------GenericsSpec.cs(2KB)
--------DeepCloner.Tests.csproj(7KB)
--------PermissionSpec.cs(2KB)
--------SpecificScenariosTest.cs(7KB)
--------CopyToObjectSpec.cs(11KB)
--------ArraysSpec.cs(9KB)
--------SimpleObjectSpec.cs(8KB)
--------ClrExceptionSpec.cs(2KB)
--------SystemTypesSpec.cs(11KB)
--------Properties()
----DeepCloner.nuspec(2KB)
----public.snk(160B)
----DeepCloner.sln(1KB)