zoukankan      html  css  js  c++  java
  • 理解Agrs Class

     
    这个类在很多代码中出现,在启动报表的时候也需要用到它.
    简单来说这个类用于共享构造参数.在Axapta中之所以可以用Args的方式,是因为:
    1.通常参数的数目比较少.
    2.用的参数类型很类似.
    3.有时候构造一个主要的对象,需要构造与之相关的对象,在构造这些对象时需要用到相
    同的构造参数.
    在传统的OO世界里,一个对象往往有多个重载的构造函数,通常情况下这没什么问题,但
    当一个主要的对象需要通过特定构造器去构造相关的对象时,事情变得糟糕起来.有时候需要
    通过逻辑判定到底该构造哪个构造函数,并且要在很多层之间传递这些信息.事实证明在
    Axapta中,很多报表,窗体,Action类的构造参数都是很类似的,于是Axapta采用了单一的Args
    对象来传递参数,它封装了最常用的几个参数.

      属性 类型 描述
    caller object                  创建Args的对象的引用
    dataset tableid             待查找字段或者记录指向的表,通常情况下为null,大多数情况下dataset是隐式的.
    designName str            将采用报表的哪个设计,如为null则用默认设置.
    lookupField  Fieldid       当显示窗体时,用于过滤记录的字段
    loopupValue Str            当显示窗体时,过滤字段对应的值.
    menuitemName Str       引起对象创建的菜单名称
    menuitemType Str         引起对象创建的菜单类型
    Name Str                       对于Form和Report指触发Form和Report的菜单名称
    parentWnd Int              不常用,可以不予理会.
    Parm Str                        一般的字符串参数
    parmenumType             int 基本枚举类型的ID,通常会使用enumnum(some-type)函数
    parmenum                    int 通过paramnumType指定的一个基础枚举类型的值.通常结合parmenumType            选择不同的行为.
    paramObject Object    一般的object类型
    Record common dataset的一条空记录,可以用DictTable.makeRecord来创建.

  • 相关阅读:
    从程序员转向项目经理
    LLBL Gen Template Studio 2.x
    抛弃强大的TFS ,借助于BugTracker.NET + Visual Source Safe + SourceLink搭建项目开发环境
    Entity Framework 5中应用表值函数进行Linq查询
    SQL Server 2012 T-SQL 新特性
    当你还在纠结于ORM的性能时,我已经远远的把你抛在脑后
    直接修改.NET程序集 LLBL Gen 2.x-4.x 许可授权方法研究
    企业应用开发模式 ERP项目中应用到的技术和工具
    Enterprise Solution 应用程序开发框架培训
    架构:小议应用开发平台
  • 原文地址:https://www.cnblogs.com/Fandyx/p/2761600.html
Copyright © 2011-2022 走看看