试图创建一个委托来访问数组,我得到一个ArgumentException,说该方法不能被绑定。创建数组获取方法失败
无法绑定到目标方法,因为它的签名或安全透明度与委托类型的不匹配。
的代码来重现此最低金额如下:
var method = typeof(string[,]).GetMethod("Get");
var func = Delegate.CreateDelegate(typeof(Func<int, int, string>), new string[4,5], method);
虽然Get方法是在默认情况下不可见,在第一行不实际工作,并找到正确的方法。当签名匹配时,我认为这个异常与Get方法是安全透明的事实有关,而Func < ,,>可能不是。如何确定委托类型是否安全透明以及如何解决此问题?
这是哪里的代码执行?虚拟主机?或者是什么? –
嗨,对于这种缺乏信息感到抱歉。我在客户端控制台应用程序中执行此代码,该应用程序应具有完全信任并仍然会出现此异常 – Georg