动态引用eConnect dll并使用invoke方法创建实例数组

本文关键字:方法 invoke 创建 实例 数组 引用 eConnect dll 动态 | 更新日期: 2023-09-27 17:50:55

我希望在运行时引用的dll的构造函数上使用调用方法创建实例数组。我必须这样做,因为我正在根据用户选择的设置更改引用的dll。

下面是不能工作的代码

Type IVItemMasterType = EConSerialAssembly.GetType("Microsoft.Dynamics.GP.eConnect.Serialization.IVItemMasterType");
                    ConstructorInfo IVItemMasterConstructor = IVItemMasterType.GetConstructor(Type.EmptyTypes);
                    object IV = null;
                    object[] IVItemMaster = null;
                    if(IVItemMasterConstructor != null)
                    {
                        IV = IVItemMasterConstructor.Invoke(new object[0]);
                        IVItemMaster = IVItemMasterConstructor.Invoke(new object[0])[1];
                        if (IV != null)
                        {
                            //good
                           IVItemMaster[0] = IV;
                        }
                    }

我想创建一个实例数组作为IVItemMaster,但我不知道如何使用invoke方法创建一个实例数组

Thanks for the help

动态引用eConnect dll并使用invoke方法创建实例数组

使用array.createinstance方法

这个方法有两个参数:

param 1 = Type (use your IVItemMasterType here)参数2 = array size

那么,实例化一个名为IVItemMasters的动态对象,然后像IVItemMasters[count] = a single instance of the IVItemMaster Type那样引用该对象