Freigeben über


Ein Ausdruck vom Typ '<Typname>' kann nicht in Object oder ValueType konvertiert werden

Aktualisiert: November 2007

Expression of type '<typename>' cannot be converted to 'Object' or 'ValueType'

Ein Ausdruck wird als Typ ausgewertet, den die Common Language Runtime (CLR) nicht mit Boxing konvertieren kann.

Als Boxing wird die Verarbeitung bezeichnet, die zum Konvertieren eines Typs in Object oder ggf. in ValueType erforderlich ist. Die Common Language Runtime kann bestimmte Typen, z. B. ArgIterator und TypedReference, nicht mit Boxing konvertieren.

Wenn Sie in der Anweisung, die diesen Ausdruck enthält, weder CType noch CObj verwendet haben, hat Visual Basic versucht, eine implizite Konvertierung auszuführen, die diesen Fehler verursacht.

Fehler-ID: BC31394

So beheben Sie diesen Fehler

  1. Suchen Sie den Ausdruck, der als der genannte Typ ausgewertet wird.

  2. Suchen Sie den Teil der Anweisung, die versucht, den genannten Typ mit Boxing zu konvertieren.

  3. Ändern Sie die Anweisung, um die Boxingkonvertierung zu vermeiden.

Siehe auch

Konzepte

Implizite und explizite Konvertierungen