Например есть тип bool , нужно его конвертировать из object различных типов, например как вариант можно реализовать через Extension Method, например
в случае некоторых типов, например строк допускается многозначность.
public static bool AsBool( object val )
{
if ( val == null )
return false;
if ( val is Int32 )
{
return (Int32)val > 0;
}
if ( val is string )
{
var s = (val as string).ToUpper();
if ( string.IsNullEmpty(s) )
return false;
return (!string.IsNullEmpty(s) && ( ( s == "1" ) || ( s == "TRUE" )));
}
...
}