如何在算法中使用嵌入术语创建 nhibernate 标准?

发布于 2024-11-30 07:49:47 字数 442 浏览 5 评论 0原文

例如:

var Ex1 = Expression.Eq("DocAttrId", new decimal(-2));
var Ex2 = Expression.Eq("RowPos", new decimal(1));
var Ex3 = Expression.Eq("DocAttrId", new decimal(105510));
var Ex4 = Expression.Eq("DocAttrId", new decimal(-1));
var ExGroup1 = (Ex1 || Ex2);
var ExGroup2 = (Ex3 && ExGroup1);
var ExGroup3 = (Ex4 || ExGroup2);
_criteria.Add(ExGroup3);

如果我在列表或数组中拥有所有 Ex1...Ex4 表达式,我可以通过构建条件来创建算法吗???

For example:

var Ex1 = Expression.Eq("DocAttrId", new decimal(-2));
var Ex2 = Expression.Eq("RowPos", new decimal(1));
var Ex3 = Expression.Eq("DocAttrId", new decimal(105510));
var Ex4 = Expression.Eq("DocAttrId", new decimal(-1));
var ExGroup1 = (Ex1 || Ex2);
var ExGroup2 = (Ex3 && ExGroup1);
var ExGroup3 = (Ex4 || ExGroup2);
_criteria.Add(ExGroup3);

Can I create a algorithm by build a criteria if I have all Ex1...Ex4 expression in a list or array???

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

滴情不沾 2024-12-07 07:49:47
var expressions = new[] {
    Expression.Eq("DocAttrId", new decimal(-2)),
    Expression.Eq("RowPos", new decimal(1)),
    Expression.Eq("DocAttrId", new decimal(105510)),
    Expression.Eq("DocAttrId", new decimal(-1)),
}

var ExGroup1 = Expression.Or(expressions[0], expressions[1]);
var ExGroup2 = Expression.And(expressions[2], ExGroup1);
var ExGroup3 = Expression.Or(expressions[3], ExGroup2);
_criteria.Add(ExGroup3);
var expressions = new[] {
    Expression.Eq("DocAttrId", new decimal(-2)),
    Expression.Eq("RowPos", new decimal(1)),
    Expression.Eq("DocAttrId", new decimal(105510)),
    Expression.Eq("DocAttrId", new decimal(-1)),
}

var ExGroup1 = Expression.Or(expressions[0], expressions[1]);
var ExGroup2 = Expression.And(expressions[2], ExGroup1);
var ExGroup3 = Expression.Or(expressions[3], ExGroup2);
_criteria.Add(ExGroup3);
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文