DGKumar Ответов: 1

Как удалить все записи, кроме нескольких записей в объекте списка C#?


У меня есть список пользователей из этого списка, как удалить все записи, кроме нескольких записей в c#.


Приведенный ниже код удаляет все записи, а счетчик равен 0.

Сценарий


список: 1,2,3,4,5,6

требуется только : 3,4,5

Что я уже пробовал:

Я попробовал с приведенным ниже кодом и получил счет 0

class Program
    {
        static void Main(string[] args)
        {
            List<Userdetails> allDetails = new List<Userdetails>() { new Userdetails() { UserId=1,UserName="A"},
            new Userdetails() { UserId=2,UserName="B"},
            new Userdetails() { UserId=3,UserName="C"},
            new Userdetails() { UserId=4,UserName="D"},
            new Userdetails() { UserId=5,UserName="E"},
            new Userdetails() { UserId=6,UserName="F"}};

            List<int> newIds = new List<int>();
            newIds.Add(2);
            newIds.Add(3);
            

            foreach (int userId in newIds)
            {
                var result = allDetails.Where(u => u.UserId == userId).ToList();
            }

        }
    }
    public class Userdetails { public int UserId { get; set; } public string UserName { get; set; } }

1 Ответов

Рейтинг:
2

OriginalGriff

Попробуй:

List<Userdetails> allDetails = new List<Userdetails>() {
    new Userdetails() { UserId=1,UserName="A"},
    new Userdetails() { UserId=2,UserName="B"},
    new Userdetails() { UserId=3,UserName="C"},
    new Userdetails() { UserId=4,UserName="D"},
    new Userdetails() { UserId=5,UserName="E"},
    new Userdetails() { UserId=6,UserName="F"}};

List<int> newIds = new List<int>();
newIds.Add(2);
newIds.Add(3);
List<Userdetails> result = allDetails.Where(ud => newIds.Contains(ud.UserId)).ToList();


DGKumar

Отлично Большое вам спасибо Грифф это должно помочь свести к минимуму мой код.