We all know in C# that if you have an int
you can cast it into a double
like this:
int int_a = 5;
double dbl_a = (double)int_a;
But what if the int
was boxed in a System.Object
and you tried to cast it to a double
like in the code below. Would it run?
object obj_intCastedToObject = (object)int_a;
double dbl_objectCastedToDouble = (double)obj_intCastedToObject; // Is this valid?
The answer is it compiles, but at runtime you get a System.InvalidCastException
. Check out the following code snippet on how you could cast this correctly.