如何获得genericstypes参数的types名称?
如果我有一个方法签名像
public string myMethod<T>( ... )
我怎么能在方法里面得到作为types参数给出的types的名字? 我想要做类似于typeof(T).FullName
,但实际上工作…
你的代码应该工作。 typeof(T).FullName
是完全有效的。 这是一个完全编译,function正常的程序:
using System; class Program { public static string MyMethod<T>() { return typeof(T).FullName; } static void Main(string[] args) { Console.WriteLine(MyMethod<int>()); Console.ReadKey(); } }
运行上面的打印(按预期):
System.Int32
假设你有一个可用的T的实例,它没有任何其他types的不同。
var t = new T(); var name = t.GetType().FullName;
typeof(T).Name和typeof(T).FullName正在为我工作…我得到的types作为parameter passing。