我有一个小问题:我会在我的 QueryOver 中插入一个条件来检查变量值。像这样的东西:
var qOver = QueryOver.Of<MyModel>(() => myMod)
.JoinAlias(() => myMod.SubMod, () => subMod, JoinType.LeftOuterJoin)
.Where(Restrictions.Or(
Restrictions.On(() => myMod.ID).IsIn(MyIDList)
, Restrictions.On(MyIDList == null))
在 SQL 语法中类似于
WHERE @Variable = '' OR MyTable.MyField = @Variable
因此,如果我的变量已填充,我将过滤我的字段。如果我的变量为空(或 null),我将选择每条记录而不过滤任何内容。
如何使用 QueryOver 和 Restrictions 达到这个结果?谢谢!