Сравнение двух списков - PullRequest
       2

Сравнение двух списков

1 голос
/ 02 февраля 2011

У меня есть 2 списка. Я должен сравнить 2 списка и взять общее значение из списка, и я должен поместить его в строковый массив ...

Первый список ....

List<string> IDs = new List<string>();
Dictionary<string, Test> group = TestProxy.GetNames(IDs.ToArray());

Второй список ...

List<string> Names = new List<string>();
Dictionary<string, Test> groupNames = TestProxy.GetSections(Names.ToArray());

Как взять общие значения ...

Обновлен код ....

        List<string> IDs = new List<string>();
        modulesIDs.Add("ID1");
        Dictionary<string, Group> group = PrivilegeProxy.GetNames(IDs.ToArray());

        List<string> Roles = new List<string>();
        Roles.Add("Role1");
        Dictionary<string, Role> Role = PrivilegeProxy.GetRoles(Roles.ToArray());


        Dictionary<string, "******"> common = group.Intersect(Role).ToDictionary(x => x.Key, x => x.Value);

        return common;

В «общем» словаре, какой объект я должен дать («Общий словарь»)

1 Ответ

4 голосов
/ 02 февраля 2011

Использование Enumerable.Intersect и Enumerable.ToDictionary

    Dictionary<string, Test> commonGroups = group.Intersect(groupNames)
        .ToDictionary(x=>x.Key, x => x.Value);

Обновление: прочтите, если сомнения сохраняются. Воссоздание словаря из IEnumerable

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...