Evi*_*Syn 2 c# generics merge generic-list
假设我有一个列表:
IList<int> originalList = new List<int>();
originalList.add(1);
originalList.add(5);
originalList.add(10);
Run Code Online (Sandbox Code Playgroud)
另一个清单......
IList<int> newList = new List<int>();
newList.add(1);
newList.add(5);
newList.add(7);
newList.add(11);
Run Code Online (Sandbox Code Playgroud)
如何更新originalList以便:
这样 - 制作originalList的内容:
{ 1, 5, 7, 11 }
Run Code Online (Sandbox Code Playgroud)
我问的原因是因为我有一个带有孩子集合的对象.当用户更新此集合时,而不是仅删除所有子项,然后插入他们的选择,我认为如果我只是对添加或删除的子项执行操作,而不是拆除整个集合,并插入newList孩子们好像都是新手.
编辑 - 抱歉 - 我写了一个可怕的标题......我应该写'最少量的代码'而不是'有效'.我认为我已经把很多答案扔掉了.他们都很棒......谢谢!
originalList = newList;
Run Code Online (Sandbox Code Playgroud)
或者,如果您希望它们是不同的列表:
originalList = new List<int>(newList);
Run Code Online (Sandbox Code Playgroud)
但是,无论哪种方式做你想要的.根据您的规则,更新后,originalList将与newList相同.
更新:我感谢大家对这个答案的支持,但在仔细阅读了这个问题之后,我相信我的另一个答案(下面)是正确答案.