我有一个问题,因为我想比较我的两个列表,第一个将被mofidied,第二个将有初始值。
在开始时我创建列表并将其克隆并将其添加到Session。
List<Ranking> ranking = new List<Ranking>();
ranking.Add();//adding items to list
Session["rankingi"] = ranking;
List<Ranking> rankingFromBase = new List<Ranking>(ranking);
Session["rankingFromBase"] = rankingFromBase;
然后我想通过编辑GridView来改变第一个列表。
List<Ranking> rankingCollection = (List<Ranking>)Session["rankingi"];
var newSimulationRanking = rankingCollection.FirstOrDefault(x => x.id == id);
if (newSimulationRanking != null)
{
rankingCollection.Remove(newSimulationRanking);
newSimulationRanking.name = name;
newSimulationRanking.age = age;
rankingCollection.Add(newSimulationRanking);
}
在此之后,当我更改第一个列表中的年龄时,我在执行此操作时在第二个列表中收到了相同的更改:
List<Ranking> rankingFromBase = new List<Ranking>();
rankingFromBase = (List<Ranking>)Session["rankingFromBase"];
我需要做些什么来获得一个修改后的列表,第二个带有初始值?