zoukankan      html  css  js  c++  java
  • ABP 使用 IShouldNormalize 完成缺省值初始化

    在 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 相反。所以这里又多出一条路了。

  • 相关阅读:
    Moya 浅析
    Swift: Alamofire -> http请求 & ObjectMapper -> 解析JSON
    ReactiveCocoa 用法实例
    RACSignal的Subscription深入
    idea 不能编译生成class文件
    idea 右下角不显示git分支
    SSO单点登录的研究
    JVM内存模型简介
    Spring事务处理
    RabbitMQ
  • 原文地址:https://www.cnblogs.com/fxck/p/13076734.html
Copyright © 2011-2022 走看看