Leer en inglés

Compartir a través de


Error del compilador CS1648

Los miembros del campo de solo lectura 'identificador' no se pueden modificar (excepto en un constructor o en un inicializador de variable)

Este error se produce cuando se intenta modificar un miembro de un campo que es de solo lectura donde no se permite su modificación. Para resolver este error, limite las asignaciones en campos de solo lectura al constructor o al inicializador de variable, o bien quite la palabra clave readonly de la declaración del campo.

Ejemplo

El ejemplo siguiente genera la advertencia CS1648:

// CS1648.cs
public struct Inner
{
    public int i;
}

class Outer
{
    public readonly Inner inner = new Inner();
}

class D
{
    static void Main()
    {
        var outer = new Outer();
        outer.inner.i = 1;  // CS1648
    }
}