C#从string创建一个类的实例

时间:2017-11-16 18:35:40

标签: c# reflection instance

我是C#的新手,我想在运行时为 MyTestClass 创建一个实例。我该怎么做 ?

public class MyTestClass
{
    public int Value { get; set; }

    public MyTestClass()
    {
        Value = 5;
    }
}

修改 我只想从字符串变量(如

)创建 MyTestClass 的实例
string classInstance = "MyTestClass"

我第一次无法完全解释,对不起。

2 个答案:

答案 0 :(得分:0)

您可以使用 Activator 类在运行时创建新实例。像这样;

var instance = (MyTestClass)Activator.CreateInstance(typeof(MyTestClass));

答案 1 :(得分:0)

public static I CreateInstance<I>() where I : class  
{  
    string assemblyPath = Environment.CurrentDirectory + "\\MyTestClass.exe";  

    Assembly assembly;  

    assembly = Assembly.LoadFrom(assemblyPath);  
    Type type = assembly.GetType("MyTestClass");  
    return Activator.CreateInstance(type) as I;  
}