ServiceStack.OrmLite 4.0.58 没有为布尔连接条件创建正确的 SQL

ServiceStack.OrmLite 4.0.58 not creating proper SQL for boolean join conditions

我正在尝试使用 ServiceStack.OrmLite v4.0.58 连接两个表,但是为布尔检查生成的 SQL 不正确:

var exp = Db.From<AdjustmentRequest>()
             .Join<Account>()
             .LeftJoin<CardHolder>((ar, ch) => ch.IsPrimary == true && ar.AccountId == ch.AccountId)

正在创建 SQL 的这个(片段):

FROM "AdjustmentRequest" 
INNER JOIN "Account" 
ON ("Account"."Id" = "AdjustmentRequest"."AccountId") 
LEFT JOIN "CardHolder" 
ON ("CardHolder"."IsPrimary" AND ("AdjustmentRequest"."AccountId" = "CardHolder"."AccountId"))

您可以在最后一行看到 "IsPrimary" 没有与 1(真)进行比较。

这以前在 4.0.54 中有效。

JOIN 表达式中联接 table 的布尔条件问题现在应该是 fixed in this commit

此更改适用于现在 available on MyGet 的 v4.0.59。