2009-04-17 5 views
0

Je me demande quelle collection de type à System.Collections.Generic soutiendra ce scénario, s'il y a une:Quel type de collection générique .Net Framework autorisera/fournira cette fonctionnalité (clé)?

Public Class MyCollectionBase(Of ItemType, KeyType) 
    Inherits System.Collection.Generic.??? 

    Default Public Shadows ReadOnly Property Item(ByVal key as KeyType) as ItemType 
     Get 
      .... 
     End Get 
    End Property 

End Class 

Dans le passé, je l'ai utilisé ce genre de comportement avec des objets de configuration héritant système .Configuration.ConfigurationElementType, comme ceci:

Default Public Shadows ReadOnly Property Item(ByVal id As String) As Element 
    Get 
     Return CType(BaseGet(id), Element) 
    End Get 
End Property 

Dans ce cas, cependant, mes collections ont rien à voir avec la configuration, et je besoin des éléments pour être génériques, ainsi que la clé de l'élément/ID.

Merci d'avance.

EDIT: Accepter la réponse de Joel. Je me sens idiot. Pour une raison ou une autre, je me suis senti collé à l'idée que je voulais rester avec une implémentation d'ICollection qui n'était pas un IDictionary, probablement parce que je suis en train de refactoriser des classes qui devaient être utilisées avec les mappings NHibernate. Dictionnaire est-il, bien sûr. Je me cacherai dans le coin si quelqu'un a besoin de moi.

Répondre

4

Dictionnaire?

+0

D'après ce que je comprends de la quetion, vous, le dictionnaire :) – cwap

+0

Le texte est vraiment pas très clair :( –

+2

Mon dieu, je peut avoir été Overthinking ce tout le temps Je me sens comme un crétin. –

0

On dirait un

Dictionary<TKey, ItemType> 

est nécessaire.

0

Il ressemble certainement à Dictionary<TKey, TValue> est ce que vous voulez. Je recommande également fortement que vous réorganiser vos paramètres de type - à peu près tous les dictionnaire/carte/tout ce que j'ai jamais vu avec la clé et les paramètres de type de valeur a mis le paramètre type de clé en premier.

0

Vous cherchez System.Collections.Generic.Dictionary

Questions connexes