Ler em inglês

Compartilhar via


Erro do Compilador CS1648

Os membros do campo somente leitura "identifier" não podem ser modificados (exceto em um construtor ou em um inicializador de variável)

Esse erro ocorre quando você tenta modificar um membro de um campo que é somente leitura, onde ele não tem permissão para ser modificado. Para resolver esse erro, limite as atribuições a campos somente leitura para o construtor ou inicializador de variável, ou remova a palavra-chave readonly da declaração do campo.

Exemplo

O seguinte exemplo gera o erro CS1648:

C#
// 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
    }
}