我正在尝试动态生成方法包装器。对于概念证明,我想要一个什么都不做的包装器。代码看起来像这样:
cSomeClassName testObject = new cSomeClassName();
dynamic wrapperObject = new ExpandoObject() as IDictionary<string, Object>;
foreach (var method in typeof(cSomeClassName).GetMethods())
{
wrapperObject.Add(method.Name,
(method.GetParameters()) => testObject.CallMethodWithParams(method.Name, method.GetParameters()));
}
打电话给
testObject.MethodName(params);
现在相当于
wrapperObject.MethodName(params);
我意识到这是一个非常糟糕的示例实现,但我不确定如何改进它。