Se você quer que seja um pouco dinâmico, por que torná-lo um enum para começar? Basta buscar os detalhes da tabela na inicialização do aplicativo e lembrá-los em (digamos) um
Dictionary<int, string>
. Você sempre pode encapsular o valor dentro de seu próprio tipo de valor que impôs o intervalo, se quiser. Alternativamente, se você não se importar em recompilar, você pode buscá-lo em build time e gerar automaticamente o código-fonte enum.