我正在尝试在 emum 上构建一个带有条件的动态查询
enumField & enumValue == enumValue
为此,在分析过程中调用以下内容
Expression GenerateBitWiseAnd(Expression left, Expression right) {
return Expression.And(left, right);
}
这会引发异常
And binary operator is not defined for `EnumType` and `EnumType`.
相等运算符运行良好
Expression GenerateEqual(Expression left, Expression right) {
return Expression.Equal(left, right);
}
但我不知道如何在没有 And 位运算符的情况下处理 [Flags] 。
问题是:从这里如何动态伪造我的查询来检查我的枚举。
我的应用程序针对.Net 4