TKCORE框架学习之入门篇(十五)--一些简单配置

一些简单配置

配置自定义的查询

通过前面的学习,我们已经知道了添加查询条件的方法,即在DataXml配置Field(字段)的时候设置<tk:ListDetail Search="true">即可。这时系统采用的是DefaultSearch机制(默认的查询)

在默认查询的基础上,咱们还可以做以下扩展:

  • 同一个条件用两个字段进行查询

    譬如:查询文章标题或者文章详情包含某内容的设置,如下:

    <tk:ListDetail>
      <tk:ListSearch>
        <tk:TwoFieldSearch OtherNickName="desc"/>
      </tk:ListSearch>
    </tk:ListDetail>
    
  • 同一个条件用多个字段进行查询

    譬如:查询文章标题或者文章详情或者标签包含某内容的设置,如下:

    <tk:ListSearch>
      <tk:MultipleFieldSearch>
        <tk:NickName>desc</tk:NickName>
        <tk:NickName>tag</tk:NickName>
      </tk:MultipleFieldSearch>
    </tk:ListSearch>
    
  • 精确查询

    默认查询时模糊查询的,如想要精确查询,设置如下:

    <tk:ListSearch>
      <tk:EqualSearch />
    </tk:ListSearch>
    
  • 模糊查询

    默认查询时模糊查询%value%的,如想要value%的模糊查询,设置如下:

    <tk:ListSearch>
      <tk:StartLikeSearch />
    </tk:ListSearch>
    

配置列表

列宽

默认情况下,列表的宽度是通过自适应决定大小的,如果觉得默认的宽度过宽或者过窄,那么可以人为设置列表的宽度,设置如下:

<tk:ListDetail ListWidth="100">
  <tk:ListDisplay>
    <tk:AutoDisplay/>
  </tk:ListDisplay>
  <tk:DetailDisplay>
    <tk:AutoDisplay/>
  </tk:DetailDisplay>
</tk:ListDetail>

禁止排序

默认情况下,点击列头可实现该字段的排序。如因为性能问题或者业务需要,禁止排序功能,设置如下:

<tk:ListDetail TextHead="true">
  <tk:ListDisplay>
    <tk:AutoDisplay/>
  </tk:ListDisplay>
  <tk:DetailDisplay>
    <tk:AutoDisplay/>
  </tk:DetailDisplay>
</tk:ListDetail>

TextHead,顾名思义,文字头的意思。一般来说类型为text的字段是不能排序的(这个系统已经自动设置了)

配置字段的默认值

默认情况下,新增的时候,所有的字段都是没有默认值的。实际项目中,经常需要设置默认值,设置如下:

<tk:Edit>
  <tk:DefaultValue>255</tk:DefaultValue>
</tk:Edit>

宏的简单介绍

宏(Marco)是早期开发的功能,用于执行片段代码。它能实现的功能Evaluator也可以实现。慢慢的,系统将逐步用Evaluator来替代宏。

当给一个日期设置默认值时,如果默认值是今天,那么使用静态的值,显然是不合适的。这时候,我们引入了宏。宏可以执行一个代码片段。宏采用插件的方式,因此,可以根据实际需要开发适合自己的插件。

当然,在引入Evaluator后,它也能执行代码,而且运算能力明前强于宏。因此,慢慢的可能会用Evaluator来替代宏。只是为了兼容性,暂时还保留着宏。

系统有两种类型的宏,一种是不带参数的,一种是带参数的。宏需要用{}包围,并且在Xml标签中设定NeedParse为true才能启动宏的执行。

不带参数的宏可以直接使用。比如,将默认值设置为今天:

<tk:Edit>
  <tk:DefaultValue NeedParse="true">{Today}</tk:DefaultValue>
</tk:Edit>

带参数的宏,首先需要使用对应的注册名(通常都是只有一个字符),而后面跟着的全部都认为是携带的参数。比如将默认值设定为QueryString的Name参数对应的值:

<tk:Edit>
  <tk:DefaultValue NeedParse="true">{#Name}</tk:DefaultValue>
</tk:Edit>

不带参数的宏

注册名描述
OrgId登陆用户的机构Id
UserId登录用户的Id
UserName登录用户的Name
HomePage返回系统配置的HomePage
Month当月(MM)
MonthStartDate当月开始日期(yyyy-MM-01)
Now现在(格式为yyyy-MM-dd HH:mm:ss)
Today今天(格式为yyyy-MM-dd)
Year当年(yyyy)
YearStartDate当年开始日期(yyyy-01-01)

带参数的宏

注册名描述
%获取AppSetting中配置的Host值
$查询数据表中的字段值
@生成数据表的Unique ID
#获得Request.QueryString的数据

宏的扩展

当然,实际项目中你也可以扩展自己的宏。

如果你想知道你的项目支持哪些宏,可以运行程序后通过以下网页查看:

  • 带参数的宏:c/plugin/CCode/Trace?Name=_tk_ParamExpression
  • 不带参数的宏:c/plugin/CCode/Trace?Name=_tk_Expression
关于TKCore的更多信息请点击: http://www.tkcore.net
关注微信公众号获取TKCore最新资讯:

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TkCore

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值