我正在尝试使用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"))
你可以在最后一行看到&#34; IsPrimary&#34;没有被比作1(真)。
这在以前的4.0.54中有效。
答案 0 :(得分:3)
JOIN表达式中连接表上的bool条件问题现在应该是fixed in this commit。
此更改现在可从v4.0.59获得,现在为available on MyGet。