X++ 如何遍历Enum(AOT元素)中的元素

也是查找资料的时候找到了一种办法,在此记录备用,使用DictEnum类,构造该类时需要传递待遍历枚举的enumNum作为构造参数,具体实现方式如下:

class testClass
{
  public static void main(Args _args)
  {
    DictEnum dictEnum = new DictEnum(enumNum(Noyes));
    for (int i = 0; i < dictEnum.values(); i++) // values()获取的是该枚举包含元素的数量,如此例中,dictEnum.values()得到的是2
    {
      /*
      index2Symbol(index)得到的是index位置上枚举元素的元素名
      index2Label(index)得到的是index位置上枚举元素的Label值
      */
      info(strFmt("%1 : %2", dictEnum.index2Symbol(i), dictEnum.index2Label(i)));
    }
  }
}

最终输出的是
No : No
Yes : Yes

关于该类详细的API,可以参考以下网站:
https://learn.microsoft.com/en-us/dotnet/api/dynamics.ax.application.dictenum?view=dyn-finops-dotnet

posted @ 2022-10-13 15:45  WillieYao  阅读(52)  评论(0)    收藏  举报