如何动态实现组件

时间:2019-11-05 07:00:31

标签: c#

我有很多自定义模板,例如:

1。

typedef struct tmpA_struct
{
     objectIdentifier                   xxxID;
     string                             xxxxxxxID;
     double                             xxValue;
     long                               bbbCount;
     long                               cccCount;
     long                               dddCount;
     long                               eeeCount;
     long                               fffCount;
     string                             lastUpdatedTimeStamp;
} tmpAInfo;

2。

  typedef struct tmpB_struct
    {
         string                             qqqType;
         long                               sssFlag;
         long                               wwwFlag;
    } tmpBInfo;

当我调用函数时,我需要放入相应的结构,像这样:

object objInput = GLOBAL.ICallTx.DoTx(
                        "doReq_fun",//string
                        "CS0000080",//string
                        new object[] { "frmChangeContent", "Confirm_Click", tmpAInfo }
);

现在的问题是,在发送函数时,我需要动态决定要使用的结构,在结构部分的动态判断中:

   MethodInfo mMethod = null;
    mMethod = getMethodInfo(functionName);
    ParameterInfo[] paramInfos = mMethod.GetParameters();
    foreach (ParameterInfo p in paramInfos)
    {
       obj = GLOBAL.Assembly_Load.CreateInstance(p.ParameterType.Name);
       PropertyInfo[] ps = p.GetType().GetProperties();

          foreach (FieldInfo f in obj.GetType().GetFields())
          {
          }
    }

问题是,某些函数需要使用List的结构。 例如:

tmpBInfo[] tmpStruct = new tmpBInfo[0];

但是我不知道如何动态地实现它?

0 个答案:

没有答案