Почему я не могу распаковать int как десятичное число?

у меня естьIDataRecord reader что я получаю десятичное число из следующего:

decimal d = (decimal)reader[0];

По какой-то причине это вызывает недопустимое исключение приведения, указывающее, что & quot; Указанное приведение недействительно. & Quot;

Когда я делаюreader[0].GetType() это говорит мне, что это Int32. Насколько я знаю, это не должно быть проблемой ....

Я проверил это с помощью этого фрагмента, который работает просто отлично.

int i = 3750;
decimal d = (decimal)i;

Это заставило меня почесать голову, удивляясь, почему не удается распаковать int, содержащийся в читателе, в виде десятичной дроби.

Кто-нибудь знает, почему это может происходить? Есть ли что-то тонкое, чего мне не хватает?

Ответы на вопрос(4)

Ваш ответ на вопрос