У меня есть таблица db, которая хранит следующее:
RuleID objectProperty ComparisonOperator TargetValue
1 age 'greater_than' 15
2 username 'equal' 'some_name'
3 tags 'hasAtLeastOne' 'some_tag some_tag2'
Теперь скажите, что у меня есть набор этих правил:
List<Rule> rules = db.GetRules();
Теперь у меня есть экземпляр пользователя:
User user = db.GetUser(....);
Как бы я прошел через эти правила и применял логику и выполнял сравнения и т.д.?
if(user.age > 15)
if(user.username == "some_name")
Так как свойство объекта, например "age" или "user_name", хранится в таблице вместе с оператором сравнения "great_than" и "equal", как я могу это сделать?
С# - статически типизированный язык, поэтому не уверен, как идти вперед.