C#反思:如何从字符串获取类引用?
我想用C#做到这一点,但是我不知道怎么做:
我有一个带有类名-eg:的字符串,FooClass
并且我想在该类上调用一个(静态)方法:
FooClass.MyMethod();
显然,我需要通过反射找到对该类的引用,但是如何呢?
回答:
您将要使用该Type.GetType
方法。
这是一个非常简单的示例:
using System;using System.Reflection;
class Program
{
static void Main()
{
Type t = Type.GetType("Foo");
MethodInfo method
= t.GetMethod("Bar", BindingFlags.Static | BindingFlags.Public);
method.Invoke(null, null);
}
}
class Foo
{
public static void Bar()
{
Console.WriteLine("Bar");
}
}
我之所以说 简单
,是因为以这种方式很容易找到同一程序集内部的类型。请参阅乔恩的答案,以获取有关您需要了解的更详尽的解释。检索类型后,我的示例将向您展示如何调用该方法。
以上是 C#反思:如何从字符串获取类引用? 的全部内容, 来源链接: utcz.com/qa/399126.html