我有以下测试代码,这给了我一些问题。我希望能够将布尔值作为字符串传递,例如“true”或“false”并返回一个布尔值。该函数应该能够处理其他类型,所以我不能只使用 Convert.ToBoolean() 等。
protected static T GetDefaultValue<T>(object propertyName)
{
var tc = new TypeConverter();
return (T)tc.ConvertTo(propertyName, typeof(T));
}
当我用这行代码调用上面的函数时,它会抛出一个异常:
bool b = GetDefaultValue<bool>("false");
它说“'TypeConverter' 无法将 'System.String' 转换为 'System.Boolean'。”
谁能指出如何以我想要的方式使用 TypeConverter 或者它不能以这种方式工作?