根据另一个列表从列表中删除项目
我有两个 SelectListItem 类型的列表。 我正在尝试删除另一个列表中存在的列表中的项目。 我尝试了所有类型的代码但徒劳,请帮助我 我尝试过的代码是:
Channels=New List<SelectListItem>();
RequestedChannels=New List<SelectListItem>();
Channels = GetChannelList();
RequestedChannels = GetChannelList(UserID, ControlChannels);
第一种情况
Channels = Channels.Except(RequestedChannels).ToList();
第二种情况
Channels = Channels.Where(item => !RequestedChannels.Contains(item)).ToList();
第三种情况
foreach (SelectListItem item in RequestedChannels)
Channels.Remove(item);
但是这些情况不起作用。 请帮忙。 谢谢和问候, 苏拉吉
I have two lists of type SelectListItem.
I am trying remove the items in a list which exists in another list.
i tried all type of code but in vain please help me
The codes i tried are:
Channels=New List<SelectListItem>();
RequestedChannels=New List<SelectListItem>();
Channels = GetChannelList();
RequestedChannels = GetChannelList(UserID, ControlChannels);
1st case
Channels = Channels.Except(RequestedChannels).ToList();
2nd case
Channels = Channels.Where(item => !RequestedChannels.Contains(item)).ToList();
3rd case
foreach (SelectListItem item in RequestedChannels)
Channels.Remove(item);
But these cases are not working.
Please help.
Thanks and Regards,
Suraj
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您需要重写 Equals 和 GetHashCode 才能使 except 和 Contains 方法起作用
有关详细信息,请参阅 Enumerable.Except
You need to override Equals and GetHashCode for the Except and Contains methods to work
See Enumerable.Except for details