DotConnect 低效布尔值比较 SQL 代
DotConnect inefficient boolean compare SQL generation
我的一个实体有一个布尔值 属性。一个 linq 查询过滤器对此 属性。
context.Items.Where(one => one.BoolProperty == true)
当我查看生成的 SQL 代码时,查询被转换为
... WHERE "Extend1".BOOL_PROPERTY <> 0
这显然是个问题,因为数据库不使用索引而是进行完整的 table 访问。
我们正在使用.Net 4.6、Entity Framework 6、DevArt 8.5 和 Oracle 12。Oracle 中的布尔字段是一个 Number(1,0)
请在您的代码中设置以下选项:
config.QueryOptions.TrueValueNumber = TrueValueNumber.One;
有关详细信息,请参阅 https://www.devart.com/dotconnect/oracle/docs/?QueryOptions.html。
我的一个实体有一个布尔值 属性。一个 linq 查询过滤器对此 属性。
context.Items.Where(one => one.BoolProperty == true)
当我查看生成的 SQL 代码时,查询被转换为
... WHERE "Extend1".BOOL_PROPERTY <> 0
这显然是个问题,因为数据库不使用索引而是进行完整的 table 访问。
我们正在使用.Net 4.6、Entity Framework 6、DevArt 8.5 和 Oracle 12。Oracle 中的布尔字段是一个 Number(1,0)
请在您的代码中设置以下选项:
config.QueryOptions.TrueValueNumber = TrueValueNumber.One;
有关详细信息,请参阅 https://www.devart.com/dotconnect/oracle/docs/?QueryOptions.html。