使用Unity 2018-2017在构建网络 错误CS0117:“ Delegate”不包含“ CreateDelegate”的定义 这是方法:
private V CreateDelegate<V>(MethodInfo method, Object target) where V : class
{
var ret = (Delegate.CreateDelegate(typeof(V), target, method) as V);
if (ret == null)
{
throw new ArgumentException("Unabled to create delegate for method called " + method.Name);
}
return ret;
}
UWP构建。 使用system.Linq 我尝试使用“ MethodInfo”,但可能某些参数错误。 无法使用此方法吗?
答案 0 :(得分:0)
您要定位哪个平台/运行时间?我不了解Mono,但是.Net标准1.x不支持Delegate.CreateDelegate。请始终记住,您是针对.Net框架的有限子集编写代码的。另外请记住,您的代码将不可避免地在某些平台(il2cpp,iOS等)上进行AOT编译,因此某些反射/发射功能将不可用。
注意:AOT意味着提前,这意味着您的代码被编译为机器指令,而不是中间语言。反射是将代码本身用作数据时的情况,例如,您可以获取类定义的属性的列表。发出意味着在运行时生成代码。如果您不了解这些内容,则可能应该做一些研究。从长远来看,这是值得的。
答案 1 :(得分:0)
where V : class
所以这种方法甚至没有意义。您将获得无效的强制转换异常。
CreateDelegate
接受2个参数,而不是3个。我什至不知道target
的目的是什么,所以我什至无法猜测您要做什么。