2009-03-26 8 views
0

Je veux créer une classe qui aura deux propriétés, par ex. key & value. Je veux une méthode qui me donnera un value basé sur le key.Comment créer une classe de propriété dans C#?

Alors, quel est le code? Je sais Hashtable mais comment l'implémenter en C#? Puis-je avoir une string comme clé?

Répondre

1

Utilisez Dictionary<string, TypeOfYourVAlue>

2

A Dictionary<string, T> fera tout ce que vous voulez.

+0

merci, Mehrdad! – Vikas

4

Voici la meilleure façon de mettre en œuvre ce (j'utilise Int32 comme un exemple d'un type de magasin):

Dictionary<String,Int32> dictionary = new Dictionary<String,Int32> 
{ 
    // this just loads up the list with 
    // some dummy data - notice that the 
    // key is a string and the value is an int 
    { "one", 1 }, 
    { "two", 2 }, 
    { "three", 3 }, 
}; 

vous pouvez maintenant saisir les valeurs du Dictionnaire <,> comme ceci:

dictionary["one"]; // returns 1 
dictionary["two"]; // returns 2 
1

Il existe également quelques autres implémentations. Il y a le HashSet qui est conçu pour les opérations d'ensemble et le KeyedCollection qui est une table de hachage facilement sérialisable.

1

... et aussi System.Collections.Specialized.NameValueCollection, ce qui est plus ou moins équivalent à Dictionary<string,string>, mais permet de stocker plusieurs valeurs de chaîne sous la même valeur de clé. Pour citer la documentation MSDN:

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

Questions connexes