|
|
1
11
如果
如果
(不幸的是,在这种情况下,您需要一个实例,因为delegate.createDelegate将尝试绑定一个委托实例,尽管在这种情况下,我们只关心它是否 能够 是否创建。) 在这两种情况下,技巧基本上都是要求.NET从MethodInfo创建所需类型的委托,但如果方法的签名错误,则返回空值而不是引发异常。然后,对空值的测试告诉我们委托是否具有正确的签名。 请注意,因为这实际上试图创建委托,所以它还将为您处理所有委托差异规则(例如,当方法返回类型兼容但与委托返回类型不完全相同时)。 |