2

我正在使用以下代码:

Type type = info.ParameterType;
object activatedType = Activator.CreateInstance(type);
arguments[info.Position] = activatedType;

问题是它type可能最终成为对某种类型的指针引用,比如System.String&(注意 &),那么我怎样才能获得 的基础类型System.String

本质上,我如何将未知类型取消引用到其基础类型?

4

1 回答 1

4
if(type.IsByRef)
{
   type = type.GetElementType();
}

如果要从其他类型获取引用类型,可以使用MakeByRefType

Type stringRefType = typeof(string).MakeByRefType();
于 2013-01-31T18:49:14.057 回答