最近在写一个泛型方法,想通过此方法调用实现某些类型的TryParse方法,通过比如int,Date的TryParse方法.如下
)
但是在反射这些类型的TryPase方法时总是提示"发现不明确的匹配",查看帮助文档发现反射重载的方法必须指定参数类型,于是就增加了参数类型的数组,如下
, types);
方法是匹配了,而且不会出现"发现不明确的匹配"的异常,但是返回的方法m是null,也就是没有反射到这个方法.后来发现问题在于参数类型,因为TryParse的第二个参数类型是out Date,引用类型.用遍历查看Date的TryPase方法的所有参数类型,发现TryPase第二个参数类型是System.Date&,而不是System.Date.刚好Type有个Type.GetType(string s),通过字符串获取类型的方法,改造之后即可,如下
        }

相关文章:

  • 2021-05-31
  • 2022-12-23
  • 2021-05-01
  • 2021-09-24
  • 2022-12-23
  • 2021-05-27
  • 2021-12-27
  • 2021-04-04
猜你喜欢
  • 2021-12-18
  • 2022-12-23
  • 2021-08-10
  • 2021-10-22
  • 2022-12-23
  • 2021-05-12
相关资源
相似解决方案