次のコードは、InvalidCastException.
object x = (short) 1;
int y = (int) x;
ボックス化された値のタイプが不明であるため、x最初に aにキャストしてから にキャストできることはわかっていますが、それはオプションではありません (ただし、 a よりも明らかに小さいです)。shortintint
ボックス化されたタイプよりも大きいタイプにボックス化解除するときの例外を回避するにはどうすればよいですか?
編集:タイプ
を使用して問題を解決しましたdynamic(すべてのパフォーマンスへの影響があります)