Вы захотите использовать этот 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");
}
}
Я говорю просто, потому что таким образом очень легко найти тип, который является внутренним для той же сборки. См . Ответ Джона для более подробного объяснения того, что вам нужно знать об этом. После того, как вы получили тип, мой пример показывает вам, как вызвать метод.
Простое использование:
Type typeYouWant = Type.GetType("NamespaceOfType.TypeName, AssemblyName");
Образец:
Type dogClass = Type.GetType("Animals.Dog, Animals");
источник
Немного поздно для ответа, но это должно помочь
Type myType = Type.GetType("AssemblyQualifiedName");
ваше полное имя сборки должно быть таким
"Boom.Bam.Class, Boom.Bam, Version=1.0.0.262, Culture=neutral, PublicKeyToken=e16dba1a3c4385bd"
источник
Через Type.GetType вы можете получить информацию о типе. Вы можете использовать этот класс, чтобы получить информацию о методе, а затем вызвать метод (для статических методов оставьте первый параметр пустым).
Вам также может потребоваться имя сборки, чтобы правильно идентифицировать тип.
источник
Мы можем использовать
чтобы получить имя класса, а также создать его объект, используя
Activator.CreateInstance(type);
using System; using System.Reflection; namespace MyApplication { class Application { static void Main() { Type type = Type.GetType("MyApplication.Action"); if (type == null) { throw new Exception("Type not found."); } var instance = Activator.CreateInstance(type); //or var newClass = System.Reflection.Assembly.GetAssembly(type).CreateInstance("MyApplication.Action"); } } public class Action { public string key { get; set; } public string Value { get; set; } } }
источник