NameValueCollection no hace nada con su IEqualityComparer?
-
27-09-2019 - |
Pregunta
Busco a System.Collections.Specialized.NameValueCollection
y se tarda un IEqualityComparer
, lo cual es una buena noticia si alguien como yo quería ordenar los elementos de la colección de, digamos, algo así como el orden alfabético de las claves.
Sin embargo, en un vistazo más de cerca en Reflector
, no veo la clase NVC
la utilización de dicho IEqualityComparer
en cualquier lugar. ¿Es correcta mi observación? Al igual que en, no veo ningún uso para un IEqualityComparer
en una entidad distinta de enumerables para reordenar sus elementos constituyentes en un cierto orden cardenal. Y no veo a un método en NVC
que parece que podría querer hacer algo por el estilo (Sort
, Arrange
, OrderBy
, Aggregate
, etc.).
Solución
NameValueCollection utiliza un href="http://msdn.microsoft.com/en-us/library/system.collections.hashtable.aspx" rel="nofollow noreferrer"> Hashtable internamente a la tienda Los valores. El Hashtable
utiliza el IEqualityComparer
a hash y comparar las claves para la igualdad.
Tenga en cuenta también que IEqualityComparer
no hacen ninguna clasificación, sólo se compara a la igualdad (como su nombre indica) así que no es útil si desea tipo Valores / claves.