我有一个存储以下内容的db表:
RuleID objectProperty ComparisonOperator TargetValue
1 age 'greater_than' 15
2 username 'equal' 'some_name'
3 tags 'hasAtLeastOne' 'some_tag some_tag2'
Run Code Online (Sandbox Code Playgroud)
现在说我有这些规则的集合:
List<Rule> rules = db.GetRules();
Run Code Online (Sandbox Code Playgroud)
现在我还有一个用户的实例:
User user = db.GetUser(....);
Run Code Online (Sandbox Code Playgroud)
我将如何循环这些规则,并应用逻辑并执行比较等?
if(user.age > 15)
if(user.username == "some_name")
Run Code Online (Sandbox Code Playgroud)
由于对象的属性如'age'或'user_name'存储在表中,以及比较操作符'great_than'和'equal',我怎么可能这样做?
C#是一种静态类型语言,因此不确定如何继续前进.