Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El inicializador de colección requiere que su tipo 'type' implemente System.Collections.IEnumerable.
Para usar un inicializador de colección con un tipo, el tipo debe implementar IEnumerable. Este error puede producirse si se usa accidentalmente sintaxis de inicializador de colección cuando se pretendía usar un inicializador de objeto.
Para corregir este error
Si el tipo no representa ninguna colección, use la sintaxis de inicializador de objeto en lugar de la sintaxis del inicializador de colección.
Si el tipo representa una colección, modifíquelo para implementar
IEnumerableantes de usar inicializadores de colección para inicializar objetos de ese tipo.Si el tipo representa una colección y no tiene acceso al código fuente, simplemente se inicializan sus elementos mediante el uso de sus constructores de clases u otros métodos de inicialización.
Ejemplo
El código siguiente produce el error CS1922:
// cs1922.cs
public class Test
{
public static void Main()
{
// Collection initializer.
var tc = new TestClass {1,"hello"} ; // CS1922
// Object initializer.
var tc2 = new TestClass { memberA = 1, memberB = "hello" }; // OK
}
}
public class TestClass
{
public int memberA { get; set; }
public string memberB { get; set; }
}