在 ABP 中有一个 IShouldNormalize 接口,内部只有一个方法 Normalize。主要场景用于 Dto

namespace Abp.Runtime.Validation
{//// 摘要://     This interface is used to normalize inputs before method execution.//     此接口用于在方法执行之前对输入进行规范化。public interface IShouldNormalize{//// 摘要://     This method is called lastly before method execution (after validation if exists).//     此方法最后在方法执行之前调用(验证存在则在之后调用)。void Normalize();}
}

凡是继承了该接口的类,必须实现 Normalize 方法,然后结合实际场景在方法内处理相关逻辑。我们就可以在该方法中实现一些参数的初始化了。

比如 ABP 中用得最多的场景 Sorting,在列头排序字段为空的时候,使用默认排序就是这样实现的。

另外这里顺便把 IShouldNormalize 的大哥 constructor 介绍下。constructor 是初始化的时候被调用,正好与 IShouldNormalize 相反。所以这里又多出一条路了。

ABP 使用 IShouldNormalize 完成缺省值初始化相关推荐

  1. 初始化之前使寄存器恢复缺省值的重要性

    TIM_BDTRInitTypeDef      TIM_BDTRInitStructure; TIM_BDTRStructInit(&TIM_BDTRInitStructure);//缺省值 ...

  2. 为什么stm32有的外设在进行初始化的时候需要将寄存器重设为缺省值?不设置会怎么样?...

    首先,缺省值就是默认值的意思,默认值可以理解为设计芯片的人认为用这个参数,比较适中,起码不可能耽误你对某一模块进行驱动.然后,为什么除了默认值(缺省值),还有这么多其他的参数可以进行选择呢,那就要看你 ...

  3. 声明一个长方形类,属性有长和宽;操作有赋值、计算长方形的周长和面积、输出信息等,要求定义构造函数(缺省值为10)和析构函数。

    题目描述:声明一个长方形类,属性有长和宽:操作有赋值.计算长方形的周长和面积.输出信息等,要求定义构造函数(缺省值为10)和析构函数. 析构函数的作用:对象消亡时,自动被调用,用来释放对象占用的空间. ...

  4. 关于静态变量的缺省值

    在调试Windows程序时,发现局部静态变量并没给初始值.通过调试并且查询资料,得知 1.除了静态变量外,所有局部变量没有缺省值: 2.静态 变量缺省值为0(无论是全局还是局部). 例如,如果stat ...

  5. LightGBM源码阅读+理论分析(处理特征类别,缺省值的实现细节)

    前言 关于LightGBM,网上已经介绍的很多了,笔者也零零散散的看了一些,有些写的真的很好,但是最终总觉的还是不够清晰,一些细节还是懵懵懂懂,大多数只是将原论文翻译了一下,可是某些技术具体是怎么做的 ...

  6. SAP MM初阶创建服务采购订单时订购单位和物料组的缺省值

    SAP MM初阶创建服务采购订单时订购单位和物料组的缺省值 执行事务代码ME21N 创建采购订单,输入了单据类型,供应商,组织结构相关的数据,账户分配类别指定为K.如下图, 当把item catego ...

  7. caffe中权值初始化方法

    参考:https://www.cnblogs.com/tianshifu/p/6165809.html 首先说明:在caffe/include/caffe中的 filer.hpp文件中有它的源文件,如 ...

  8. 3.6 权值初始化-机器学习笔记-斯坦福吴恩达教授

    权值初始化 0值初始化 在逻辑回归中,我们通常会初始化所有权值为 0 ,假如在如下的神经网络也采用 0 值初始化: 则可以得到: a1(1)=a2(2)a^{(1)}_1=a^{(2)}_2a1(1) ...

  9. 定义进项税代码缺省值

    一.说明 本文是在SAP系统后台,维护指定公司代码的进项税缺省值,以便于在采购业务的发票校验操作中能够快速地指定税码.此项配置主要与发票校验有关(TCODE:MIRO). 此项配置有先决条件,公司代码 ...

最新文章

  1. python自动切换链接_windown 使用python 自动切换网络
  2. PAT甲级1037 Magic Coupon:[C++题解]贪心
  3. 设计模式--组合(Component)模式
  4. 用pytorch加载训练模型
  5. tensorflow中tf.get_variable()函数详解
  6. Qt中为自己的程序建立一个消息循环
  7. 在VS中设置比较和谐的字体和颜色的方法
  8. ASP.NET MVC 5调用其他Action
  9. 森林门前的小路用计算机弹奏歌曲,抖音森林外的小路是什么歌 森林外的小路歌曲介绍...
  10. 【转】使用 Element-UI 的 Loading 组件-以服务的方式调用
  11. linux开发板系统备份
  12. 通用后台管理系统前端界面Ⅺ——信息列表页(弹窗复用增改、CRUD前端基础实现)
  13. 如何用python爬取下载微博视频_程序员徒手用python教你爬取新浪微博,一天可抓取 1300 万条数据...
  14. 红队笔记之痕迹清理技术要点与实战方法总结
  15. DRL-FlappyBird
  16. 魔兽世界3区部落最多的服务器,魔兽世界怀旧服玩家为你推荐,不用排队、非鬼服非单阵营的服务器...
  17. 钉钉创建单人群、双人群及钉钉自定义机器人的初步使用(附python3代码)
  18. 激活数字营销新引擎,亚马逊云科技为企业带来数字化营销新体验
  19. Ubuntu 18.04 修改中国时区
  20. 【MTK Front Camera Bringup】

热门文章

  1. 卸载 Creative Cloud 桌面应用程序
  2. 空间转录组DeepST
  3. 开启联想电脑管家电池养护模式的操作步骤
  4. FX3U/UC中软元件一览
  5. 深入研究 CSS 文本换行
  6. 【Flink系列】窗口系列简介
  7. 文本匹配相关方向打卡点总结
  8. 天津大学计算机系就业,本科生“就业率”最高的4个专业,都和计算机相关!发展前景好...
  9. 基金理财——如何卖出基金
  10. 两台虚拟服务器如何串联,两台tp-link路由器串联设置教程