我有一个Type []数组,我想获得Func类型,其中T1,T2等...对应于数组中的类型。该数组的大小不固定,但假定运行时可用类型(.NET 4中的16个,.NET 3.5中的4)。如何从字符串获得一个开放的泛型
在.NET 4中,我能做到这一点,它的工作原理:
Type GetFuncType(Type typeRet, Type[] types)
{
return Type.GetType(string.Format("System.Func`{0}", types.Length + 1))
.MakeGenericType(types.Concat(new Type[] { typeRet }).ToArray())
}
在.NET 3.5然而,对于开放式泛型类型的Type.GetType失败,返回NULL。
有没有办法让我在.NET 3.5中工作?我唯一认为atm是为近似泛型类型建立一个字符串。
完美。谢谢。 – 2011-06-01 12:53:55