5

这不会编译,但我想要做的只是将对象转换为传递给函数的“t”?

public void My_Func(Object input, Type t)
{
   (t)object ab = TypeDescriptor.GetConverter(t).ConvertFromString(input.ToString());
}
4

2 回答 2

14

您可以执行以下操作:

object ab = Convert.Changetype(input, t);

但是,您似乎想以ab强类型的方式使用,您只能通过使用泛型来做到这一点:

public void My_Func<T>(Object input)
{
   T ab = (T)Convert.ChangeType(input, typeof(T));
}
于 2012-06-28T14:34:40.567 回答
1
public void My_Func(Object input, Type t)
{
    object test = new object();
    test = Convert.ChangeType(test, t);
    test = TypeDescriptor.GetConverter(t).ConvertFromString(input.ToString());
}
于 2012-06-28T14:36:36.060 回答