Freigeben über


Compilerfehler CS0039

Der "Typ1" kann nicht mit einer Verweiskonvertierung, einer Boxing-Konvertierung, einer Unboxing-Konvertierung, einer Wrapping-Konvertierung oder einer NULL-Typkonvertierung in "Typ2" konvertiert werden.

Eine Konvertierung mithilfe des as-Operators ist nach Vererbung, Verweiskonvertierung und Boxing-Konvertierung zulässig.

Beispiel

Im folgenden Beispiel wird der Fehler CS0039 generiert:

using System;

class A { }
class B : A { }
class C : A { }

class Example
{
    static void Main()
    {
        C c;

        // This compiles, because
        // there is an explicit reference conversion from type A to type C.
        A a = new C();
        c = a as C;

        // This generates CS0039, because
        // there is no implicit or explicit reference conversion between B and C types.
        B b = new B();
        c = b as C;  // CS0039
    }
}