42 votes

Supprimer une clé d'un dictionnaire par nom de clé

Je suis en train d'essayer de supprimer une clé de mon dictionnaire si la clé est une certaine clé.

parameterList est un dictionnaire

parameterList.Remove(parameterList.Where(k => String.Compare(k.Key, "someKeyName") == 0));

10 votes

Votre question ne contient pas de question.

0 votes

Votre code va à l'encontre du but d'un dictionnaire. Évitez d'utiliser LINQ avec les dictionnaires.

2 votes

Je jetterais toujours un coup d'œil à la documentation de MSDN en premier lieu. À mon avis, c'est le meilleur endroit pour commencer lorsque l'on recherche une réponse à une question sur une API/SDK .Net.

75voto

Ufuk Hacıoğulları Points 16499

Cela devrait suffire :

parameterList.Remove(clé);

34voto

Kirill Polishchuk Points 28058

Supprimez simplement par clé :

parameterList.Remove("someKeyName");

Pour vérifier :

if (parameterList.Remove("someKeyName"))
{
    // clé supprimée
}
else
{
    // le dictionnaire ne contient pas la clé
}

0 votes

Eh bien, je dois d'une manière ou d'une autre vérifier si cette clé existe d'abord, sinon je suppose, sinon je recevrai une exception de référence nulle si elle n'existe pas.

8 votes

@CoffeeAddict, Si le dictionnaire ne contient pas cette clé, Remove renvoie false, sinon - true.

0 votes

Probable que algo así como si (parameterList["someKeyName]! = null) parameterList.Remove("someKeyName");

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X