вернуть словарь кортежей в качестве типа возврата функции в c # - PullRequest
0 голосов
/ 27 августа 2018

У меня есть следующий словарь:

  var returnedresult = (from v in vaults.Where(v => v.IntegrationTypeInternal == (int)integrationType)
                                  join c in DB.Cobrands on v.Cobrand.ID equals c.ID
                                  join p in DB.TaxPartners on c.ID equals p.Cobrand.ID
                                  join pb in DB.TaxPartnerBranches on p.ID equals pb.Partner.ID
                                  join pa in DB.TaxPartnerAgents on pb.ID equals pa.Branch.ID
                                  join pac in DB.Accounts on pa.Account.ID equals pac.ID
                                  where v.Account == null || v.Account.ID == pac.ID
                                  select new
                                  {
                                      v.Account,
                                      v.Cobrand,
                                      v.CredentialsXml,
                                      pac
                                  }).ToList();


var myDictionary2 = returnedresult.GroupBy(x => new { x.Account, x.Cobrand, x.CredentialsXml },
            (key, group) => new
            {
                key1 = key.Account,
                key2 = key.Cobrand,
                key3 = key.CredentialsXml,
                result = group.Select(g => g.pac).ToList()
            });

Можно ли использовать Tuple вместо этого словарного ключа?Я хочу вернуть этот словарь в функцию, и я не знаю, как я могу вернуть его, не создавая новый тип в качестве объекта для Ключ словаря

1 Ответ

0 голосов
/ 27 августа 2018

Вы можете вернуть что-нибудь с Linq.

var myDictionary2 = returnedresult.GroupBy(x => new { x.Account, x.Cobrand, x.CredentialsXml },
        (key, group) => Tuple.Create(key.Account, key.Cobrand, key.CredentialsXml, group.Select(g => g.pac).ToList());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...