Например: у меня есть 2 переменные (значение) и (свойство), которые я хочу проверить, возможно ли приведение к значению? Мы не знаем тип переменных, Как проверить, возможно ли приведение?
var value = Reader[item];
PropertyInfo property = properties.Where(x => x.Name == item).FirstOrDefault();
var type=property.PropertyType;//Or property.ReflectedType
var cs= value as type // Error: type is variable but is used like a Type
if (cs!=null){
...
}
Образец 1:
var value = 123;//is int
type = property.GetType();// is double
var x = (double)value;//Can be casted
Образец 2:
var value = "asd";//is string
type = property.GetType();// is double
var x = (double)value;//Can not be casted
dynamic
. - person Ousmane D.   schedule 26.12.2017Expression.Convert
, как описано здесь: stackoverflow.com/a/3647134/5311735 - person Evk   schedule 26.12.2017