РЕДАКТИРОВАТЬ: Я собираюсь оставить этот ответ, поскольку он будет работать, и он демонстрирует несколько звонков, о которых читатели могут не знать иначе.Тем не менее, ответ Люка определенно лучше - иди, скажи ему:)
Вы можете сделать:
public static bool IsNullableEnum(this Type t)
{
return t.IsGenericType &&
t.GetGenericTypeDefinition() == typeof(Nullable<>) &&
t.GetGenericArguments()[0].IsEnum;
}