zoukankan      html  css  js  c++  java
  • D365 FO Chain of Command

    D365 FO Update9以后增加了Chain of Command(CoC),用来扩展系统类的方法,具体的使用方法参见下文。
    https://docs.microsoft.com/en-us/dynamics365/fin-ops-core/dev-itpro/extensibility/method-wrapping-coc
    在CoC出现之前,系统采用在扩展类上增加静态方法,并通过属性指定一堆值才能实现,如下所示:

    1 [PreHandlerFor(tableStr(InventTable), tableMethodStr(InventTable, initValue))]
    2     public static void InventTable_Pre_initValue(XppPrePostArgs args)
    3     {
    4         InventTable inventTable = args.getThis();
    5         inventTable.ItemId = "Hello";
    6     }

    现在用CoC实现如下所示:

    1 public void initValue()
    2     {
    3         next initValue();
    4         this.ItemId = "Hello";
    5     }

    简洁多了,庆幸接触D365晚,不用写那么繁琐的方法来修改系统类的方法。
    感觉AX进入D365时代以后,X++本身的特性的增加进入了快车道,迭代也很快,不像从3.0到2012,语言本身的特性变化不大。
    虽然迭代以后,看之前的写法有点傻,不过这正说明进步,正如看C#在Lamada表达式之前的一些写法也显得笨拙一样,拥抱变化吧

  • 相关阅读:
    大数据内存模型(二级指针)
    多线程函数指针
    返回函数指针的函数
    动态分配二维数组指针
    俄罗斯方块学习笔记
    tailf
    tail
    cut
    split
    paste
  • 原文地址:https://www.cnblogs.com/Farseer1215/p/12802396.html
Copyright © 2011-2022 走看看