visual tipos studio recorrer multidimensionales matriz matrices llenar imprimir datos arreglos arreglo c# dictionary

tipos - recorrer matriz c#



¿Es la forma correcta de inicializar un diccionario de C#con los valores que ya están en él? (5)

Estoy creando un diccionario en un archivo C # con el siguiente código:

private readonly Dictionary<string, XlFileFormat> FILE_TYPE_DICT = new Dictionary<string, XlFileFormat> { {"csv", XlFileFormat.xlCSV}, {"html", XlFileFormat.xlHtml} };

Hay una línea roja debajo de la new con el error:

La característica ''iniciador de recopilación'' no se puede usar porque no forma parte de la especificación de lenguaje C # ISO-2

¿Alguien puede explicar lo que está pasando aquí?

EDITAR: está bien, resulta que estaba usando .NET versión 2.


Con C # 6.0, puedes crear un diccionario de la siguiente manera:

var dict = new Dictionary<string, int> { ["one"] = 1, ["two"] = 2, ["three"] = 3 };

Incluso funciona con tipos personalizados.


Los inicializadores de objetos se introdujeron en C # 3.0, verifique qué versión de marco está apuntando.

Resumen de C # 3.0


No puedo reproducir este problema en una aplicación de consola .NET 4.0 simple:

static class Program { static void Main(string[] args) { Dictionary<string, string> myDict = new Dictionary<string, string> { { "key1", "value1" }, { "key2", "value2" } }; Console.ReadKey(); } }

¿Puedes intentar reproducirlo en una aplicación de consola simple y pasar de allí? Parece probable que esté apuntando a .NET 2.0 (que no lo admite) o al marco del perfil del cliente, en lugar de una versión de .NET que admita la sintaxis de inicialización.


Puede inicializar un Dictionary (y otras colecciones) en línea. Cada miembro está contenido con llaves:

Dictionary<int, StudentName> students = new Dictionary<int, StudentName> { { 111, new StudentName { FirstName = "Sachin", LastName = "Karnik", ID = 211 } }, { 112, new StudentName { FirstName = "Dina", LastName = "Salimzianova", ID = 317 } }, { 113, new StudentName { FirstName = "Andy", LastName = "Ruth", ID = 198 } } };

Ver MSDN para más detalles.


Supongamos que tenemos un diccionario como este

Dictionary<int,string> dict = new Dictionary<int, string>(); dict.Add(1, "Mohan"); dict.Add(2, "Kishor"); dict.Add(3, "Pankaj"); dict.Add(4, "Jeetu");

Podemos inicializarlo como sigue.

Dictionary<int, string> dict = new Dictionary<int, string> { { 1, "Mohan" }, { 2, "Kishor" }, { 3, "Pankaj" }, { 4, "Jeetu" } };