这是一篇简洁的C#映射使用攻略之一。
1、新建一个对象存储对象名与方法名
public class Obj
{
public string ClassName { get; set; }
public string ClassMethod { get; set; }
}
2、在一个公共类Common.cs为实际对象赋值
public class Common{
public static Obj GetObjConfig(string str)
{
var tempobj = new Obj();
if (str == "test")
{
tempobj.ClassName = "Test.test";//命名空间+类名
tempobj.ClassMethod = "add";//方法
return form;
}
else
{
return null;
}
}
}
3、主函数部分使用映射创建对象及调用方法
public string Check(string str1,string str2){
var Objtest = Common.GetObjConfig(str1);
if(Objtest != null){
var obj = Activator.CreateInstance(Type.GetType(Objtest.ClassName));
MethodInfo info = obj.GetType().GetMethod(Objtest.ClassMethod);
string result = (string)info.Invoke(Obj, new object[] { str2 });
return result;
}
esle
{
return null;
}
}
这篇文章中没有写到的代码是test.cs及其内部的方法add()。
在方法Check()中str1用于传入GetObjConfig()方法的参数,在这个例子中,str2是传入add()方法的参数,虽然是string类型的,也可以根据需要更改为某个对象。