#示例代码
1、类Class3
namespace Test
{
public class Class3
{
public string Name { get; set; }
}
}
2、类Class2
namespace Test
{
public class Class2
{
public static string Fun<T>(string str) where T : class
{
Type t = typeof(T);
return t.ToString()+"_"+str;
}
}
}
3、类Class1
namespace Test
{
public class Class1
{
public static object Test(string className)
{
Type t = Type.GetType(className);
var method = Type.GetType("Test.Class2").GetMethod("Fun")
.MakeGenericMethod(new Type[] { t });
return method.Invoke(null, new object[] { "Hello"});
}
}
}
4、调用
static void Main(string[] args)
{
var re= Test.Class1.Test("Test.Class3");
Console.WriteLine(re);
}
结果:"Test.Class3_Hello"