I have an IDataRecord reader
that I'm retrieving a decimal from as follows:
decimal d = (decimal)reader[0];
For some reason this throws an invalid cast exception saying that the "Specified cast is not valid."
When I do reader[0].GetType()
it tells me that it is an Int32. As far as I know, this shouldn't be a problem....
I've tested this out by this snippet which works just fine.
int i = 3750;
decimal d = (decimal)i;
This has left me scratching my head wondering why it is failing to unbox the int contained in the reader as a decimal.
Does anyone know why this might be occurring? Is there something subtle I'm missing?