克隆C#中的列表[重复]

  可能重复:   如何在C#中克隆通用列表? 嘿,我一直在尝试克隆一个列表,到目前为止我找到了这个功能 addRange但我很确定它没有克隆列表中的对象但是做了列表的浅表副本我想知道如何克隆列表 提前致谢。     
已邀请:
要克隆列表,必须克隆每个单独的项目。如果存在项类的Clone()的有用实现,这是一个使用LINQ的单行:
List<MyType> lstCloned = lstOriginal.Select(i => i.Clone()).ToList();
    
AddRange,更一般地说,对list中包含的对象的所有操作都只克隆对这些对象的引用。要自己克隆对象,您应该在对象级别自己处理副本。 你是什​​么意思“克隆名单”?克隆对象?您可以在每个对象上显式实现它(例如,通过实现ICloneable接口),或使用Reflection进行一般实现。 寻找“ICloneable”,“深度克隆”或“深层复制”,以了解有关获得预期结果的不同方法的更多信息。     
您需要解析列表并为每个项目创建一个新对象,然后新项目将其添加到新列表中。     

要回复问题请先登录注册