我试图从c#中的字符串动态地将变量转换为任何类型。这里有一个例子:从字符串中铸造类型
string str = "System.Int32";
Type t = System.Type.GetType(str);
string v = "100";
System.Int32 x = Convert.ChangeType(v,t);
是在设计时显示的错误是:“诠释”
不能键入“对象”隐式转换为存在明确的转换(您是否缺少演员?)
完成此操作的最简单方法是什么?我意识到上面的例子显示了转换为int32,但这仅仅是一个例子。我不知道类型提前。对于我原来的问题没有说清楚,我表示抱歉。
'System.Int32 X =(System.Int32)Convert.ChangeType(V,T);' – 2013-03-16 01:53:01
约翰是正确的,应该加上自己的评论作为答案。您在转换呼叫时缺少演员表。 – Parker 2013-03-16 01:53:38
但是,如果你知道'v'将是一个'int',那么在'string'中获取类型的意义何在?显然,在这种特殊情况下你根本不需要't'。 – hattenn 2013-03-16 01:57:04