相关疑难解决方法(0)

如何在.NET中执行对象的深层复制(特别是C#)?

我想要一个真正的深拷贝.在Java中,这很容易,但是你如何在C#中做到这一点?

.net c# serialization clone

560
推荐指数
6
解决办法
42万
查看次数

用于创建集合中所有元素的深层副本的通用方法

我有各种不同对象类型的ObservableCollections.我想编写一个方法来获取任何这些对象类型的集合,并返回一个新集合,其中每个元素都是给定集合中元素的深层副本.以下是特定类的示例

   private static ObservableCollection<PropertyValueRow> DeepCopy(ObservableCollection<PropertyValueRow> list)
   {
        ObservableCollection<PropertyValueRow> newList = new ObservableCollection<PropertyValueRow>();
        foreach (PropertyValueRow rec in list)
        {
            newList.Add((PropertyValueRow)rec.Clone());
        }
        return newList;
   }
Run Code Online (Sandbox Code Playgroud)

如何为任何实现ICloneable的类使这个方法通用?

c# generics

8
推荐指数
1
解决办法
2万
查看次数

如何停止引用其他类对象?

我有 2 个与 C# 中的类相同的对象。

Myclass obj1 = new Myclass();
Myclass obj2 = null;
obj2 = obj1;
obj1.Name = "abc";     //"abc" will also assign to obj2.Name. 
Run Code Online (Sandbox Code Playgroud)

当我分配时obj1.Name="abc",它也会分配给obj2.Name. 我想阻止这一切。我已经尝试过 const, seal 但没有得到结果。有人能建议我如何停止对obj1on的引用obj2吗?

c#

5
推荐指数
1
解决办法
4625
查看次数

标签 统计

c# ×3

.net ×1

clone ×1

generics ×1

serialization ×1