如何对IList<t>进行深拷贝 我要对 IList<Model.Series> 进行深拷贝其中Model.Series 这个是自定义的类!该类里面没有其他的引用类型变量 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 foreach(Model.Series m in list){ Model.Series t=new Model.Seies(); t.xx=m.xx; .....} 把你的每个类里面,都写clone方法。就可以了。 都是书上弄的名词。深度拷贝,囧。关键是你想拷贝什么,IList<Model.Series>是个接口,估计是指向某个List<Model.Series>对象,IList<Model.Series> oo = new List<Model.Series>();赋值略如果对集合的引用复制IList<Model.Series> oo2 = oo;此时oo2[1]修改会反映到oo。如果对每个成员复制一份一样的引用IList<Model.Series> oo = new List<Model.Series>();List<Model.Series> oo2 = new List<Model.Series>(oo);//直接用oo进行初始化oo2[1] = new Model.Series();不会影响oo中的内容。但如果Model.Series是class。则oo2[1]对属性的修改也会反映到oo那么你最彻底的让oo2和oo分开就是实现复制的接口ICloneable彻底的深度复制:foreach (Model.Series item in oo){ oo2.Add((Model.Series)item.Clone());}所以,这里有3种复制 把你的每个类里面,都写clone方法。 问一个关于无边框拉大小的问题!!! 英文系统下WM 6 中文模拟器中文显示乱码 急急!!!!!!! Panel里的TextBox值丢失 开贴问一些有关WINFORM界面的简单问题 C#控制台计时器问题 tabPage不能接受拖放操作? 使用HttpWebRequest和HttpWebResponse下载文件时出现超时情况如何处理? 求教dev的问题。。。着急 c#写文件问题,如能解决,提供人民币报酬 在C#调用API的问题,烦死,请指教 Winform中的Treeview动态绑定数据库 制作安装程序
{
Model.Series t=new Model.Seies();
t.xx=m.xx;
.....
}
就可以了。
关键是你想拷贝什么,
IList<Model.Series>是个接口,估计是指向某个List<Model.Series>对象,
IList<Model.Series> oo = new List<Model.Series>();
赋值略如果对集合的引用复制
IList<Model.Series> oo2 = oo;
此时oo2[1]修改会反映到oo。如果对每个成员复制一份一样的引用
IList<Model.Series> oo = new List<Model.Series>();
List<Model.Series> oo2 = new List<Model.Series>(oo);//直接用oo进行初始化
oo2[1] = new Model.Series();不会影响oo中的内容。但如果Model.Series是class。
则oo2[1]对属性的修改也会反映到oo那么你最彻底的让oo2和oo分开就是实现复制的接口ICloneable
彻底的深度复制:
foreach (Model.Series item in oo)
{
oo2.Add((Model.Series)item.Clone());
}所以,这里有3种复制