动态引用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
使用array.createinstance
方法
这个方法有两个参数:
param 1 = Type (use your IVItemMasterType here)
参数2 = array size
那么,实例化一个名为IVItemMasters
的动态对象,然后像IVItemMasters[count] = a single instance of the IVItemMaster Type
那样引用该对象