如何从 C# 中的另一个列表中删除列表 [英] How To Remove List From Another List In C#

查看:37
本文介绍了如何从 C# 中的另一个列表中删除列表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这里我有两个列表 var userListFromFriendTable = mainService.GetUserFromFriend(ChattingUserName);var getAllUserFromMessageUserTable = mainService.GetalluserfromMessageUser(); 其实现是下面给出.

现在想要的是从 getAllUserFromMessageUserTableMessageUser 表 MessageUserName column 中删除 userListFromFriendTable 列表的所有 Friend 表 FriendRequestReceiverName 列数据代码>列表.

任何帮助都会被磨碎

Here I have two list var userListFromFriendTable = mainService.GetUserFromFriend(ChattingUserName); and var getAllUserFromMessageUserTable = mainService.GetalluserfromMessageUser(); whose implementation are given below.

Now what is want is to remove all the Friend table FriendRequestReceiverName column data of userListFromFriendTable list from MessageUser table MessageUserName column of getAllUserFromMessageUserTable list.

Any help will be grate

    public List<Friend> GetUserFromFriend(string chattingUserName)
    {
        var checkUser = uow.Repository<Friend>().FindBy(x => x.FriendRequestSenderName.ToLower() == chattingUserName.ToLower()).ToList();
        return checkUser;
    }
    public List<MessageUser> GetalluserfromMessageUser()
    {
        var checkUser = uow.Repository<MessageUser>().GetAll().ToList();
        return checkUser;
    }


public class Friend
{
    public int FriendId { get; set; }
    public string FriendRequestSenderName { get; set; }
    public string FriendRequestReceiverName { get; set; }
    public int IsConfirmed { get; set; }
}
public class MessageUser
{
    public int Id { get; set; }
    public string MessageUserName { get; set; }
    public int IsFriend { get; set; }
}

推荐答案

试试这个:

var names=userListFromFriendTable.Select(i=> i.FriendRequestReceiverName) 
  .OfType<string>()
 .ToArray();

getAllUserFromMessageUserTable.RemoveAll(r => names.Contains( r.MessageUserName );

这篇关于如何从 C# 中的另一个列表中删除列表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆