Почему IsAssignableFrom () не работает для int и double?

Это неверно: typeof (double) .IsAssignableFrom (typeof (int))

Это неверно: typeof (int) .IsAssignableFrom (typeof (double))

Но это работает:

        double a = 1.0;
        int b = 1;

        a = b;

Очевидно, что double присваивается из int , но framework IsAssignableFrom () ошибается.

Почему? или это ошибка в .NET, вызванная особой природой int и double, которые не имеют отношения наследования, но могут быть присвоены (в одном направлении)?

25
задан Ian Mercer 8 June 2011 в 07:53
поделиться