多表全局过滤器,设置的字段添加表short名称不够自由。 返回

求助
2 1584
该叫什么 程序 发布于2018/1/24
悬赏:5 飞吻
.Add(new SqlFilterItem()//多表全局过滤器
             {
                 FilterValue = filterDb =>
                 {
                     return new SqlFilterResult() { Sql = " f.isDelete=0" };
                 },
                 IsJoinQuery = true
             })


f 定义死了,多表查询时,定义的参数只能是f, 3.x里我改过通配符,自动跟随主表(第一个表)的参数短名。

4.x有计划完善这个吗?

热忱回答2

  • 程序 程序 VIP0
    2018/1/25

    暂时自行解决

    在AppendFilter方法里(QueryBuilder.cs 284行),给

    WhereInfos.Add(this.Builder.AppendWhereOrAnd(this.WhereInfos.IsNullOrEmpty(),"自定义替换多表前缀")) 


    取this.TableShortName 来拼接Filter里面的SQL附加值。

    0 回复
  • http://www.codeisbug.com/Doc/8/1127 可以用MergeTable 的立式实现自由

    0 回复

版块

学习文档

最新会员

发布达人

回贴达人