Error del compilador CS0514

Actualización: noviembre 2007

Mensaje de error

'constructor': el constructor estático no puede tener ninguna llamada de constructor 'this' o 'base' explícita
'constructor' : static constructor cannot have an explicit 'this' or 'base' constructor call

No se permite llamar a this en el constructor estático porque a éste se le llama automáticamente antes de crear cualquier instancia de la clase. Además, los constructores estáticos no se heredan y no pueden ser llamados directamente.

Para obtener más información, vea this (Referencia de C#) y base (Referencia de C#).

Ejemplo

El ejemplo siguiente genera el error CS0514:

// CS0514.cs
class A
{
    static A() : base(0) // CS0514
    {
    }

    public A(object o)
    {
    }
}

class B
{
    static B() : this(null) // CS0514
    {
    }

    public B(object o)
    {
    }
}