dire que j'ai un generic dictionary avec des données comme celle-ci (j'espère que la notation est clair ici):en utilisant Enumerable.Aggregate sur System.Collection.Generic.Dictionary
{ "param1" => "value1", « param2 » => « valeur2 », « param3 » => « value3 » }
J'essaie d'utiliser la fonction Enumerable.Aggregate pour se replier sur chaque entrée dans le dictionnaire et quelque chose sortie comme ceci:
"/ param1 = valeur1;/param2 = valeur2;/param3 = v alue3 "
Si j'agrégeais une liste, ce serait facile. Avec le dictionnaire, les paires clé/valeur me font trébucher.
Merci! En regardant le code dic.agrgregate, je vois pourquoi la solution String.Join est mieux adaptée pour cela. – brad
Mais la méthode 'String.Join' ne marche-t-elle pas deux fois sur le dictionnaire (une fois pour configurer le tableau et une seconde fois pour rejoindre les éléments du tableau)? Vous créez également un tableau jetable lorsque vous pouvez tout aussi bien joindre votre chaîne que vous marchez sur les éléments. – paracycle
paracycle: Si la performance est au premier plan, vous devriez probablement utiliser quelque chose comme 'StringBuilder' dans une boucle mais même si ce n'est pas le cas, utiliser 'Join' allouera une seule chaîne de caractères et y copiera toutes les chaînes du tableau. probablement plus efficace que de concaténer chaque partie de la ficelle et de la jeter. L'opération de concat est dans l'agrégat O (n^2) où n est la longueur de la chaîne de sortie. –