Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Sie haben versucht, einen Typ in einen anderen Typ zu konvertieren, der den Wert möglicherweise nicht enthalten kann, z. B. eine Long in eine Integer, während der Typüberprüfungsschalter (Option Strict-Anweisung) auf Onfestgelegt ist.
Diese Art von Konvertierung wird als schmale Konvertierung bezeichnet und kann zur Laufzeit fehlschlagen. Aus diesem Grund Option Strict On verbietet die implizite Verengung von Konvertierungen.
Fehler-ID: BC30512
So beheben Sie diesen Fehler
Bestimmen Sie, ob eine Konvertierung eines beliebigen Typs vorhanden ist von
<type1>in<type2>. Wenn beide elementare Visual Basic-Typen sind oder beide Instanzen von Klassen sind, können Sie diese Bestimmung in der Regel vornehmen, indem Sie die Tabelle in Widening- und Narrowing Conversions konsultieren.Wenn nur eine Schmalungskonvertierung vorhanden
<type1><type2>ist, sollten Sie explizite Umwandlungen verwenden. Die Schlüsselwörter "CType-Funktion" und "DirectCast-Operator" lösen eine Laufzeit ausnahme aus, wenn die Konvertierung fehlschlägt. Das Schlüsselwort TryCast Operator gilt nur für Verweistypen und gibt Nothing zurück, wenn die Konvertierung fehlschlägt.Wenn eine Schmalungskonvertierung vorhanden ist und Ihr Programm einen Laufzeitfehler tolerieren kann oder Sie sicher sind, dass ein Laufzeitfehler nicht möglich ist, können Sie am Anfang des Quellcodes angeben
Option Strict Off. Sie sollten die Konvertierung aber trotzdem in einen Try einschließen... Fangen... Schließlich blockieren Sie die Anweisung , um unerwartete Ergebnisse oder vorzeitige Beendigung Ihres Programms zu vermeiden.Wenn keine Konvertierung vorhanden
<type1><type2>ist, müssen Sie die Programmlogik erneut auswerten. Möglicherweise können Sie Code schreiben, der Werte entsprechend<type2>den erwarteten Werten<type1>zuweisen kann.Wenn keine Konvertierung von
<type1>zu<type2>und einer der Typen eine von Ihnen definierte Klasse oder Struktur ist, können Sie möglicherweise einen Konvertierungsoperator von diesem Typ in oder vom anderen Typ definieren. Weitere Informationen finden Sie unter How to: Define a Conversion Operator.In allen Fällen und als allgemeine Richtlinie sollten Sie die Verwendung von Schmalungskonvertierungen vermeiden, es sei denn, Sie können Fehler in einem
CatchBlock abfangen und effektiv damit umgehen.