¿Hay alguna manera de inicializar un NVC usando la sintaxis del inicializador de colección C #?
NameValueCollection nvc = new NameValueCollection() { ("a", "1"), ("b", "2") };
Gracias
Respuestas:
Si; solo usa llaves en lugar de paréntesis.
var nvc = new NameValueCollection { {"a", "1"}, {"b", "2"} };
Puede llamar a Addmétodos con conjuntos arbitrarios de parámetros utilizando la sintaxis.
NameValueCollectionacepta esta sintaxis: msdn.microsoft.com/en-us/library/bb384062.aspx
Dictionary<K,V>inicialización, "o cualquier colección cuyo método Add tome múltiples parámetros", msdn.microsoft.com/en-us/library/bb531208.aspx
Puede usar inicializadores de colección con todo lo que tenga Addmétodo. Sí, escribiendo pato. Si Addtiene más de 1 parámetro, ponga tuplas entre llaves:
NameValueCollection nvc = new NameValueCollection() { { "a", "1" }, { "b", "2" } };
IEnumerable.
System.Collections.IEnumerableY tiene un Addmétodo que toma al menos 1 argumento.
NameObjectCollectionBaseque usa IEnumerable. Es una lección para mí antes, si desea verificar cuál fue la implementación utilizada, asegúrese de verificar todo el tipo base hasta System.Object.