InvalidCastException クラス

無効なキャストまたは明示的な型変換に対してスローされる例外。

この型のすべてのメンバの一覧については、InvalidCastException メンバ を参照してください。

System.Object
   System.Exception
      System.SystemException
         System.InvalidCastException

<Serializable>
Public Class InvalidCastException   Inherits SystemException
[C#]
[Serializable]
public class InvalidCastException : SystemException
[C++]
[Serializable]
public __gc class InvalidCastException : public SystemException
[JScript]
public
   Serializable
class InvalidCastException extends SystemException

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

解説

InvalidCastException は、次の場合にスローされます。

  • Single または Double から Decimal への変換で、変換元の値が無限、非数 (NaN)、または変換先の型で表現するには大きすぎる値の場合。
  • 明示的な参照変換の際にエラーが発生した場合。

明示的な参照変換を正常に実行するには、変換元の値が null 参照 (Visual Basic では Nothing) または であるか、変換元の引数によって参照されるオブジェクト型が、暗黙の参照変換によって変換先の型に変換できることが必要です。

システムでサポートされる変換については、 Convert クラスのトピックを参照してください。変換先の型が変換元の型の値を格納できる場合でも、特定の変換元の値を格納するには小さすぎるときに発生するエラーについては、 OverflowException 例外のトピックを参照してください。

次に示す MSIL (Microsoft Intermediate Language) 命令は、 InvalidCastException をスローします。

  • castclass
  • refanyval
  • unbox

InvalidCastException は、値 0x80004002 を保持する HRESULT COR_E_INVALIDCAST を使用します。

InvalidCastException のインスタンスの初期プロパティ値の一覧については、 InvalidCastException コンストラクタのトピックを参照してください。

必要条件

名前空間: System

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

アセンブリ: Mscorlib (Mscorlib.dll 内)

参照

InvalidCastException メンバ | System 名前空間 | Exception | 例外の処理とスロー