Error del compilador CS1914

No se puede asignar el campo estático 'name' en un inicializador de objeto

Inicializadores de objeto por definición inicializan objetos, o instancias, de clases. No se pueden usar para inicializar un static campo de un tipo. Independientemente de cuántas instancias de una clase se creen, solo hay una copia de un static campo. Para los tipos genéricos, cada tipo genérico cerrado tiene su propia copia de campos estáticos. Los campos estáticos marcados con ThreadStaticAttribute tienen una copia por subproceso.

Para corregir este error

  1. Cambie el campo a un campo de instancia del tipo o quite el intento de inicializarlo del inicializador de objeto.

Ejemplo

El código siguiente genera la advertencia CS1914 porque el inicializador intenta inicializar el TestClass.Number campo , que es static:

// cs1914.cs  
using System.Linq;  
public class TestClass  
{  
    public string Message { get; set; }  
    public static int Number { get; set; }
}  
class Test  
{  
    static void Main()  
    {  
        TestClass b = new TestClass() { Message = "Hello", Number = "555-1212" }; // CS1914  
  
    }  
}