我正在使用C#,我需要创建一个可以接受参数作为类名的方法。
喜欢: -
Class A
{
public string name {get;set;}
}
Class B
{
public int age {get;set;}
}
Class C
{
public decimal salary {get;set;}
}
函数将根据某些条件调用MethodABC。
Function1(){
A obj = new A();
MethodaBC(obj);
}
Function2(){
B obj = new B();
MethodaBC(obj);
}
Function3(){
C obj = new C();
MethodaBC(obj);
}
方法定义是: - 静态MethodABC(....)
在MethodABC中,我需要根据MethodABC中传递的类对象进行一些操作。
答案 0 :(得分:1)
您可以随时使用activator课程来帮助您。
示例:
Type type = typeof(MyClass);
MyClass instance = (MyClass)Activator.Create(type);
//method example
public void ClassGet(string MyClassName,string blabla)
{
object instance = Activator.Create(MyClassName);
}
// Call it like:
Gold g = new Gold();
g.ClassGet("MyClass", "blabla");
您也可以将该类作为对象传递:
//method example
public void ClassGet(MyClass MyClassName,string blabla)
{
object instance = Activator.Create(MyClassName);
}
// Call it like:
Gold g = new Gold();
g.ClassGet(MyClass, "blabla");