Получите класс Type
для объекта и проверьте его.
Type t = reader.GetValue(ordinalId).GetType();
if (t.IsValueType){
//Struct
} else {
//Class
}
Я подозреваю, что вы будете использовать объект Type позже в своем коде, если вы 'пытается динамически обрабатывать результаты.