【发布时间】:2019-08-01 21:34:09
【问题描述】:
我试图通过动态对象调用公共 TryParse 方法,但我收到 RuntimeBinderException...“System.Reflection.TypeInfo 不包含 TryParse 的定义”。运行时的动态对象具有 System.Boolean 类型,并且此类已定义该公共方法。
注意。这样做的原因是创建一个带有额外错误检查的通用 TryParse 方法,该方法将在应用程序中重复使用。
这是重现问题的代码:
private (bool Success, T Value) TryParse<T>(string strval)
{
(bool Success, T Value) retval;
dynamic dtype = typeof(T);
retval.Success = dtype.TryParse(strval, out retval.Value);
return retval;
}
就我而言,我正在使用 TryParse("true") 测试该方法。 我究竟做错了什么? 谢谢。
【问题讨论】:
标签: c#