我想创建一个采用动态输入参数并返回一个可用于填充类型变量的动态方法。有没有办法从方法中获取分配给变量的类型?
double dbl = AssignValue("Hello");
public dynamic AssignValue(dynamic ValueToAssign)
{
Type type = //do something to get the type of variable "dbl"
switch (type.Name)
{
case "Double":
return double.Parse(AssignValue);
break;
case "Decimal":
return decimal.Parse(AssignValue);
break;
//...
}
}
我试图在StackFrame中找到某些东西,但是没有运气。
任何进一步研究的术语也将不胜感激。
有没有办法从方法中获取分配给变量的类型?
不可以。方法无法检索有关将其结果分配给该变量的任何信息。
但是,您可以使用泛型来告诉方法要返回的对象类型:
double dbl = AssignValue<double>("Hello");
public T AssignValue<T>(object valueToAssign)
{
Type type = typeof(T);
switch(type.Name)
{
//...
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句