Как удалить значение IList <Class>с помощью словарного ключа - PullRequest
1 голос
/ 13 октября 2010

Например, у меня есть класс с именем Temp, затем я присвоил ему значения, используя IList<Temp>.После заполнения IList<Temp> я создал словарь и назначил ключ int каждому объекту.Мой вопрос заключается в том, как мне удалить из IList и словаря значение temp_value с именем b и a со значением ключа "2"?

class Temp
{
    public string name { get; set; }

    public Temp(string n)
    {
        this.name = n;
    }
}

Main

class Program
{
    static void Main(string[] args)
    {
        IList<Temp> temp_value = new List<Temp>();

        temp_value.Add(new Temp("a")
        {
            name = "a",
        });

        temp_value.Add(new Temp("b")
        {
            name = "b",
        });

        temp_value.Add(new Temp("b")
        {
            name = "b",
        });

        Dictionary<int, Temp> dic = new Dictionary<int, Temp>();

        for (int i = 0; i < temp_value.Count; i++)
        {
            dic.Add(i, temp_value[i]);                
        }
    }
}

1 Ответ

1 голос
/ 13 октября 2010

Dict.remove (2)

Это самый простой способ

Поскольку вы добавили элементы в словарь с тем же индексом, что и список.

Так что если вы используете dict.remove (2), то вы можете использовать IList.remove в (2)

...