Проблема в том, что компилятор не знает, что такое 'T
, и поэтому не знает, можно ли вообще 'T
привести к IEnumerable<obj>
.На самом деле есть некоторые типы, которые нельзя привести таким образом (вот что говорит вам компилятор: " Тесты типов во время выполнения не разрешены для некоторых типов ")
Но вы все равно можетезаставьте компилятор замолчать - сначала приведите к obj
, затем приведите к тому, что вам нужно:
value :> obj :?> seq<obj>
Или, альтернативно, используйте встроенную функцию box
, которая простото же приведение к obj
, только в виде функции:
box value :?> seq<obj>