我正在尝试使用代理在dotNet核心Web应用程序中进行反射。以下是代码示例。
Action action = (Action) Delegate.CreateDelegate(typeof(Action), method)
编译器出现以下错误:
'Delegate' does not contain a definition for 'CreateDelegate' ConsoleApp2..NETCoreApp,Version=v1.0'
是否有任何解决方法可以在.net Core中创建委托?
答案 0 :(得分:6)
请改用MethodInfo.CreateDelegate
。
MethodInfo methodInfo = target.GetType().GetMethod(nameof(FooMethod));
Action action = (Action) methodInfo.CreateDelegate(typeof(Action), target);
预计 Delegate.CreateDelegate
将在.NET Core 2.0中返回:.NET API Catalog