我正在尝试为类型转换创建一个通用方法,该方法获取一个对象和要转换的对象类型。
通过使用Convert.ChangeType()
我可以做我想做的事,但是在运行时需要太多时间。制作我想要的通用类的最佳方法是什么。
我的旧代码看起来像这样;
public static ConvertTo<T>(object data) where T : struct // yes the worst variable name!
{
// do some controls...
return Convert.ChangeType(data, typeof(T));
}
编辑:澄清...
对于前; 我已经执行了我的查询,它返回了一个 DataRow。并且有一列输入为十进制,我想将其转换为长。如果我调用此方法,则将十进制转换为 long 需要花费很多时间。
并且该方法的 T 类型只能是值类型。我的意思是“T:结构”