Cet article a fait l'objet d'une traduction manuelle. Déplacez votre pointeur sur les phrases de l'article pour voir la version originale de ce texte.
Traduction
Source
Ce sujet n'a pas encore été évalué - Évaluez ce sujet

NameValueCollection, classe

Représente une collection de clés String et de valeurs String associées accessibles soit par la clé, soit par l'index.

Espace de noms :  System.Collections.Specialized
Assembly :  System (dans System.dll)
[SerializableAttribute]
public class NameValueCollection : NameObjectCollectionBase

Le type NameValueCollection expose les membres suivants.

  Nom Description
Méthode publique Pris en charge par XNA Framework NameValueCollection() Initialise une nouvelle instance de la classe NameValueCollection qui est vide, possède la capacité initiale par défaut et utilise le fournisseur de code de hachage ne respectant pas la casse par défaut, ainsi que le comparateur ne respectant pas la casse par défaut.
Méthode publique Pris en charge par XNA Framework NameValueCollection(IEqualityComparer) Initialise une nouvelle instance de la classe NameValueCollection qui est vide, possède la capacité initiale par défaut et utilise l'objet IEqualityComparer spécifié.
Méthode publique Pris en charge par XNA Framework NameValueCollection(Int32) Initialise une nouvelle instance de la classe NameValueCollection qui est vide, possède la capacité initiale spécifiée et utilise le fournisseur de code de hachage ne respectant pas la casse par défaut, ainsi que le comparateur ne respectant pas la casse par défaut.
Méthode publique Pris en charge par XNA Framework NameValueCollection(NameValueCollection) Copie les entrées du NameValueCollection spécifié vers un nouveau NameValueCollection possédant la même capacité initiale que le nombre d'entrées copiées et utilisant le même fournisseur de code de hachage, ainsi que le même comparateur que celui de la collection source.
Méthode publique Pris en charge par XNA Framework NameValueCollection(IHashCodeProvider, IComparer) Obsolète. Initialise une nouvelle instance de la classe NameValueCollection qui est vide, possède la capacité initiale par défaut et utilise le fournisseur de code de hachage spécifié, ainsi que le comparateur spécifié.
Méthode publique Pris en charge par XNA Framework NameValueCollection(Int32, IEqualityComparer) Initialise une nouvelle instance de la classe NameValueCollection qui est vide, possède la capacité initiale spécifiée et utilise l'objet IEqualityComparer spécifié.
Méthode publique Pris en charge par XNA Framework NameValueCollection(Int32, NameValueCollection) Copie les entrées du NameValueCollection spécifié vers un nouveau NameValueCollection possédant la capacité initiale spécifiée ou la même capacité initiale que le nombre d'entrées copiées (selon la valeur la plus élevée) et utilisant le fournisseur de code de hachage ne respectant pas la casse par défaut, ainsi que le comparateur ne respectant pas la casse par défaut.
Méthode protégée NameValueCollection(SerializationInfo, StreamingContext) Initialise une nouvelle instance de la classe NameValueCollection qui est sérialisable et utilise les System.Runtime.Serialization.SerializationInfo et System.Runtime.Serialization.StreamingContext spécifiés.
Méthode publique Pris en charge par XNA Framework NameValueCollection(Int32, IHashCodeProvider, IComparer) Obsolète. Initialise une nouvelle instance de la classe NameValueCollection qui est vide, possède la capacité initiale spécifiée et utilise le fournisseur de code de hachage spécifié, ainsi que le comparateur spécifié.
Début
  Nom Description
Propriété publique Pris en charge par XNA Framework AllKeys Obtient toutes les clés contenues dans NameValueCollection.
Propriété publique Pris en charge par XNA Framework Count Obtient le nombre de paires clé/valeur contenues dans l'instance de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Propriété protégée Pris en charge par XNA Framework IsReadOnly Obtient ou définit une valeur indiquant si l'instance de NameObjectCollectionBase est en lecture seule. (Hérité de NameObjectCollectionBase.)
Propriété publique Pris en charge par XNA Framework Item[Int32] Obtient l'entrée à l'index spécifié de NameValueCollection.
Propriété publique Pris en charge par XNA Framework Item[String] Obtient ou définit l'entrée dans NameValueCollection avec la clé spécifiée.
Propriété publique Pris en charge par XNA Framework Keys Obtient une instance du NameObjectCollectionBase.KeysCollection qui contient toutes les clés dans l'instance de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Début
  Nom Description
Méthode publique Pris en charge par XNA Framework Add(NameValueCollection) Copie les entrées dans le NameValueCollection spécifié pour le NameValueCollection en cours.
Méthode publique Pris en charge par XNA Framework Add(String, String) Ajoute une entrée possédant le nom et la valeur spécifiés pour NameValueCollection.
Méthode protégée Pris en charge par XNA Framework BaseAdd Ajoute une entrée contenant la clé et la valeur spécifiées dans l'instance de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Méthode protégée Pris en charge par XNA Framework BaseClear Supprime toutes les entrées de l'instance de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Méthode protégée Pris en charge par XNA Framework BaseGet(Int32) Obtient la valeur de l'entrée à l'index spécifié de l'instance de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Méthode protégée Pris en charge par XNA Framework BaseGet(String) Obtient la valeur de la première entrée contenant la clé spécifiée dans l'instance de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Méthode protégée Pris en charge par XNA Framework BaseGetAllKeys Retourne un tableau String qui contient toutes les clés dans l'instance de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Méthode protégée BaseGetAllValues() Retourne un tableau Object qui contient toutes les valeurs dans l'instance de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Méthode protégée BaseGetAllValues(Type) Retourne un tableau du type spécifié qui contient toutes les valeurs dans l'instance de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Méthode protégée Pris en charge par XNA Framework BaseGetKey Obtient la clé de l'entrée à l'index spécifié de l'instance de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Méthode protégée Pris en charge par XNA Framework BaseHasKeys Obtient une valeur indiquant si l'instance du NameObjectCollectionBase contient des entrées dont les clés ne sont pas null. (Hérité de NameObjectCollectionBase.)
Méthode protégée Pris en charge par XNA Framework BaseRemove Supprime les entrées contenant la clé spécifiée dans l'instance de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Méthode protégée Pris en charge par XNA Framework BaseRemoveAt Supprime les entrées à l'index spécifié de l'instance de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Méthode protégée Pris en charge par XNA Framework BaseSet(Int32, Object) Définit la valeur de l'entrée à l'index spécifié de l'instance de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Méthode protégée Pris en charge par XNA Framework BaseSet(String, Object) Définit la valeur de la première entrée contenant la clé spécifiée dans l'instance de NameObjectCollectionBase, le cas échéant ; sinon, ajoute une entrée contenant la clé et la valeur spécifiées dans l'instance de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Méthode publique Pris en charge par XNA Framework Clear Invalide les tableaux mis en cache et supprime toutes les entrées de NameValueCollection.
Méthode publique CopyTo Copie l'ensemble du NameValueCollection vers un Array unidimensionnel compatible, en commençant à l'index spécifié du tableau cible.
Méthode publique Pris en charge par XNA Framework Equals(Object) Détermine si l'Object spécifié est égal à l'Object en cours. (Hérité de Object.)
Méthode protégée Pris en charge par XNA Framework Finalize Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de netto***ge avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.)
Méthode publique Pris en charge par XNA Framework Get(Int32) Obtient les valeurs à l'index spécifié de NameValueCollection, combinées dans une même liste avec la virgule comme séparateur.
Méthode publique Pris en charge par XNA Framework Get(String) Obtient les valeurs associées à la clé spécifiée de NameValueCollection, combinées dans une même liste avec la virgule comme séparateur.
Méthode publique Pris en charge par XNA Framework GetEnumerator Retourne un énumérateur qui itère au sein de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Méthode publique Pris en charge par XNA Framework GetHashCode Sert de fonction de hachage pour un type particulier. (Hérité de Object.)
Méthode publique Pris en charge par XNA Framework GetKey Obtient la clé à l'index spécifié de NameValueCollection.
Méthode publique GetObjectData Implémente l'interface ISerializable et retourne les données requises pour sérialiser l'instance de NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Méthode publique Pris en charge par XNA Framework GetType Obtient le Type de l'instance actuelle. (Hérité de Object.)
Méthode publique Pris en charge par XNA Framework GetValues(Int32) Obtient les valeurs à l'index spécifié de NameValueCollection.
Méthode publique Pris en charge par XNA Framework GetValues(String) Obtient les valeurs associées à la clé spécifiée à partir de NameValueCollection.
Méthode publique Pris en charge par XNA Framework HasKeys Obtient une valeur qui indique si NameValueCollection contient des clés qui ne sont pas null.
Méthode protégée Pris en charge par XNA Framework InvalidateCachedArrays Réaffecte la valeur null aux tableaux mis en cache de la collection.
Méthode protégée Pris en charge par XNA Framework MemberwiseClone Crée une copie superficielle de l'objet Object actif. (Hérité de Object.)
Méthode publique OnDeserialization Implémente l'interface ISerializable et déclenche l'événement de désérialisation une fois que la désérialisation est terminée. (Hérité de NameObjectCollectionBase.)
Méthode publique Pris en charge par XNA Framework Remove Supprime les entrées contenant la clé spécifiée dans l'instance de NameObjectCollectionBase.
Méthode publique Pris en charge par XNA Framework Set Définit la valeur d'une entrée dans NameValueCollection.
Méthode publique Pris en charge par XNA Framework ToString Retourne une chaîne qui représente l'objet actuel. (Hérité de Object.)
Début
  Nom Description
Implémentation d'interface explicite Méthode privée Pris en charge par XNA Framework ICollection.CopyTo Copie l'ensemble du NameObjectCollectionBase vers un Array unidimensionnel compatible, en commençant à l'index spécifié du tableau cible. (Hérité de NameObjectCollectionBase.)
Implémentation d'interface explicite Propriété privée Pris en charge par XNA Framework ICollection.IsSynchronized Obtient une valeur indiquant si l'accès à l'objet NameObjectCollectionBase est synchronisé (thread-safe). (Hérité de NameObjectCollectionBase.)
Implémentation d'interface explicite Propriété privée Pris en charge par XNA Framework ICollection.SyncRoot Obtient un objet qui peut être utilisé pour synchroniser l'accès à NameObjectCollectionBase. (Hérité de NameObjectCollectionBase.)
Début

Cette collection se base sur la classe NameObjectCollectionBase. Cependant, contrairement à NameObjectCollectionBase, elle stocke plusieurs valeurs de chaîne sous une même clé.

Cette classe peut être utilisée pour les en-têtes, les chaînes de requête et les données de formulaire.

Chaque élément est une paire clé/valeur.

Les collections de ce type ne conservent pas le classement d'élément, et aucun classement particulier n'est garanti lors de l'énumération de la collection.

La capacité de NameValueCollection correspond au nombre d'éléments que peut contenir NameValueCollection. Lorsque des éléments sont ajoutés à NameValueCollection, la capacité augmente automatiquement par réallocation.

Le fournisseur de code de hachage fournit les codes de hachage des clés dans NameValueCollection. Le fournisseur de code de hachage par défaut est CaseInsensitiveHashCodeProvider.

Le comparateur détermine si deux clés sont égales. Le comparateur par défaut est CaseInsensitiveComparer.

Dans la version 1.0 du .NET Framework, cette classe utilise des comparaisons de chaînes dépendantes de la culture. Toutefois, dans la version 1.1 et les versions ultérieures du .NET Framework, elle utilise CultureInfo.InvariantCulture pour les comparaisons de chaînes. Pour plus d'informations sur l'impact de la culture sur les comparaisons et le tri, consultez Comparaison et tri des données pour une culture spécifiqueComparaison et tri des données pour une culture spécifiqueet Exécution d'opérations de chaînes indépendantes de la culture.

null est autorisée comme clé ou comme valeur.

Remarque Attention Attention

La méthode Get ne distingue pas null qui est retourné parce que la clé spécifiée est introuvable et null, retourné parce que la valeur associée à la clé est null.


using System;
using System.Collections;
using System.Collections.Specialized;

public class SamplesNameValueCollection  {

   public static void Main()  {

      // Creates and initializes a new NameValueCollection.
      NameValueCollection myCol = new NameValueCollection();
      myCol.Add( "red", "rojo" );
      myCol.Add( "green", "verde" );
      myCol.Add( "blue", "azul" );
      myCol.Add( "red", "rouge" );

      // Displays the values in the NameValueCollection in two different ways.
      Console.WriteLine( "Displays the elements using the AllKeys property and the Item (indexer) property:" );
      PrintKeysAndValues( myCol );
      Console.WriteLine( "Displays the elements using GetKey and Get:" );
      PrintKeysAndValues2( myCol );

      // Gets a value either by index or by key.
      Console.WriteLine( "Index 1 contains the value {0}.", myCol[1] );
      Console.WriteLine( "Key \"red\" has the value {0}.", myCol["red"] );
      Console.WriteLine();

      // Copies the values to a string array and displays the string array.
      String[] myStrArr = new String[myCol.Count];
      myCol.CopyTo( myStrArr, 0 );
      Console.WriteLine( "The string array contains:" );
      foreach ( String s in myStrArr )
         Console.WriteLine( "   {0}", s );
      Console.WriteLine();

      // Searches for a key and deletes it.
      myCol.Remove( "green" );
      Console.WriteLine( "The collection contains the following elements after removing \"green\":" );
      PrintKeysAndValues( myCol );

      // Clears the entire collection.
      myCol.Clear();
      Console.WriteLine( "The collection contains the following elements after it is cleared:" );
      PrintKeysAndValues( myCol );

   }

   public static void PrintKeysAndValues( NameValueCollection myCol )  {
      Console.WriteLine( "   KEY        VALUE" );
      foreach ( String s in myCol.AllKeys )
         Console.WriteLine( "   {0,-10} {1}", s, myCol[s] );
      Console.WriteLine();
   }

   public static void PrintKeysAndValues2( NameValueCollection myCol )  {
      Console.WriteLine( "   [INDEX] KEY        VALUE" );
      for ( int i = 0; i < myCol.Count; i++ )
         Console.WriteLine( "   [{0}]     {1,-10} {2}", i, myCol.GetKey(i), myCol.Get(i) );
      Console.WriteLine();
   }


}

/*

This code produces the following output.

Displays the elements using the AllKeys property and the Item (indexer) property:
   KEY        VALUE
   red        rojo,rouge
   green      verde
   blue       azul

Displays the elements using GetKey and Get:
   [INDEX] KEY        VALUE
   [0]     red        rojo,rouge
   [1]     green      verde
   [2]     blue       azul

Index 1 contains the value verde.
Key "red" has the value rojo,rouge.

The string array contains:
   rojo,rouge
   verde
   azul

The collection contains the following elements after removing "green":
   KEY        VALUE
   red        rojo,rouge
   blue       azul

The collection contains the following elements after it is cleared:
   KEY        VALUE


*/


.NET Framework

Pris en charge dans : 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Pris en charge dans : 4, 3.5 SP1

Windows 7, Windows Vista SP1 ou ultérieur, Windows XP SP3, Windows XP SP2 Édition x64, Windows Server 2008 (installation minimale non prise en charge), Windows Server 2008 R2 (installation minimale prise en charge avec SP1 ou version ultérieure), Windows Server 2003 SP2

Le .NET Framework ne prend pas en charge toutes les versions de chaque plateforme. Pour obtenir la liste des versions prises en charge, consultez Configuration requise du .NET Framework.

Les membres statiques publics (Shared en Visual Basic) de ce type sont thread-safe. Il n'est pas garanti que les membres d'instance soient thread-safe.

Cette implémentation ne fournit pas de wrapper synchronisé (thread-safe) pour NameValueCollection, mais des classes dérivées peuvent créer leurs propres versions synchronisées de NameValueCollection à l'aide de la propriété SyncRoot de la classe NameObjectCollectionBase.

L'énumération d'une collection n'est intrinsèquement pas une procédure thread-safe. Même lorsqu'une collection est synchronisée, les autres threads peuvent toujours modifier la collection, ce qui entraîne la levée d'une exception par l'énumérateur. Pour garantir la sécurité des threads lors de l'énumération, vous pouvez verrouiller la collection pour toute la durée de l'énumération ou intercepter les exceptions résultant de modifications apportées par d'autres threads.

Cela vous a-t-il été utile ?
(1500 caractères restants)
Contenu de la communauté Ajouter
Annotations FAQ