我有一个列表 listOriginal
并将其存储在 Viewstate 中..
ViewState["Origion"] = listPatientEncounter;
现在,我需要在列表项中进行一些格式化并将其保存在另一个 Viewstate 上以供进一步使用..
List<....> listCopy = new List<....>();
listCopy= (from n in listOriginal select n).ToList();
//This method formattes a few listCopy items
ViewState["copylist"] = ConverttoUTCTime(listCopy);
但是,问题是在第二个列表中所做的更改也会在第一个列表中显示操作,因此我在想要使用包含项目的 ViewState["Origion"]
时遇到问题在它的原始状态..
最佳答案
如果列表项是一个对象,那么您更改了源对象的属性。 .ToList() 正在创建新的列表对象,而不是克隆项目。
换句话说,它将是具有相同项目的“另一个”列表。
要解决此问题,您应该克隆列表项。
关于c# - 列表引用问题c#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13802461/