A kód nélkül nehéz erre bármit is mondani, de nem a switch-csel van gondom. Az persze mindenképp jobb mint a sok else if. Ha végig kell vizsgálni egy enum lehetséges példányait akkor azt vagy kiemelném onnan egy erre dedikált metódusba, vagy eleve maga az enum is végezhetné. De kód nélkül csak a levegőbe beszélek, szóval ha tényleg ez a legelegánsabb megoldás, akkor elfogadom :)