有时候我们知道类的名字,希望根据类名来实例化一个类,下面的代码可以帮你完成
/// <summary>
/// 根据任务返回处理该任务的对象
/// </summary>
/// <param name="task">具体任务</param>
/// <returns>返回任务处理对象</returns>
static public TaskProcesser CreateTaskProcesser(TaskData task)
{
//根据类名进行反射
try
{
TaskProcesser processer = (TaskProcesser)Activator.CreateInstance(Type.GetType("MicroBlog.TaskService." + task.Type + "_Processer"),task);
return processer;
}
catch (Exception E)
{
Log.Write(E.Message);
return new Empty_Processer(task);
}
}
