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.
Los miembros del campo de solo lectura 'name' de tipo 'struct name' no se pueden asignar con un inicializador de objeto porque es de un tipo de valor.
Los campos de solo lectura que son tipos de valor solo pueden asignarse en un constructor.
Para corregir este error
Cambie la estructura a un tipo de clase.
Inicialice la estructura con un constructor.
Ejemplo
El código siguiente genera el error CS1917:
// cs1917.cs
class CS1917
{
public struct TestStruct
{
public int i;
}
public class C
{
public readonly TestStruct str = new TestStruct();
public static int Main()
{
C c = new C { str = { i = 1 } }; // CS1917
return 0;
}
}
}