Это не отвечает на ваш вопрос как таковой; он предлагает альтернативное решение, которое может повлиять на тот же результат.
Вместо хранения одного столбца базы данных с псевдокодом, который определяет условие, создайте таблицу, в которой схема определяет типы условий, которые должны быть удовлетворены, и значения этих условий. Это упрощает программную оценку этих условий, но это может усложниться, если у вас есть множество типов условий для оценки.
Например, у вас может быть таблица, которая выглядит следующим образом.
CONDITION_ID | MINIMUM | MAXIMUM | IS_PRIME | ETC.
______________________________________________________
1 | 2 | NULL | NULL | ...
2 | 4 | 6 | NULL | ...
Эти данные строки, соответственно карту с правилами value > 2
и .
Это дает ряд преимуществ по сравнению с вашим подходом.
- Улучшенная производительность и чистота
- Ваши условия могут быть оценены на уровне базы данных, и могут быть использованы для фильтрации запросов
- Вам не нужно беспокоиться об обработке сценариев, в которых ваш синтаксис псевдокода сломанных
Это звучит довольно болезненно – NimChimpsky
Я рекомендую найти лучший способ сделать это, иначе это нужно сделать, используя Reflection. – Jivings
Да, неправильно ... удаленный пост – dardo