Есть шаблон функции, которая должна возвращать из базы данных базовый тип, который ей указывается в качестве параметра.
protected T ExecuteScalar<T>(string sql)
{
return (T)ExecuteScalarCore(sql); // Возвращает object
}
Но в стлучае, если результат выполнения SQL-запроса NULL, то возникает InvalidCastException при приведении (T)obejct
Как выйти из этой ситуации? Сейчас я перехватываю и обрабатываю InvalidCastException
Кстати, а в чём разница между Generic и шаблонами C++ ?