Error del compilador CS1648
Actualización: noviembre 2007
Mensaje de error
Los miembros del campo de sólo lectura 'identificador' no se pueden modificar (excepto en un constructor o en un inicializador de variables)
Members of readonly field 'identifier' cannot be modified (except in a constructor or a variable initializer)
Este error se produce cuando se intenta modificar un miembro de un campo de sólo lectura que no permite modificaciones. Para resolverlo, limite las asignaciones a campos de sólo lectura al constructor o el inicializador de variables, o bien quite la palabra clave readonly de la declaración del campo.
El código siguiente genera el error CS1648:
// CS1648.cs
public struct Inner
{
public int i;
}
class Outer
{
public readonly Inner inner = new Inner();
}
class D
{
static void Main()
{
Outer outer = new Outer();
outer.inner.i = 1; // CS1648
}
}