0

我只想在特定列与两个值之一相等时才映射属性,目前我已经尝试过:

HasMany<Event>(u => u.Events)
    .KeyColumn("Id")
    .Cascade.AllDeleteOrphan()
    .OrderBy("OrderByDate desc")
    .Where(e => e.Status == Status.New || e.Status == Status.Old);

但我得到一个异常“无法将表达式转换为 SQL”

如何使用两个 where 子句和它们之间的 OR 运算符创建映射?

编辑:我不想在我的映射中使用 SQL,我想使用 lambda 表达式(如果可能的话......)

4

1 回答 1

1

该实现确实处理了一些事情,但远未完成(尤其是ExpressionType.OrElse/BinaryExpression未处理)。你必须自己写sql或者增强class的实现ExpressionToSql

于 2013-01-08T07:09:16.340 回答