根据字符串创建类的实例
本文关键字:实例 创建 字符串 | 更新日期: 2023-09-27 17:50:27
我的项目中有12个类:
class class1
{
}
class class2
{
}
在另一个类中,我有一个方法,我想创建class1
或class2
的实例根据字符串:
public void MyMethod(string s)
{
//I want to create an instance of class1 if s=="class1" or class2 if s=="class2"
}
我该怎么做?
这是一个解决方案,尝试这个希望它会工作。
首先你需要在字符串中传递类的实际名称,例如,如果你有一个类ClassA
,然后传递ClassA
到这个类,它将创建一个类的实例。
private object MyMethod(string className)
{
var assembly = Assembly.GetExecutingAssembly();
var type = assembly.GetTypes()
.First(t => t.Name == className);
return Activator.CreateInstance(type);
}