我正在动态创建记录器类型的对象,尝试使用Reflection的概念。我的代码如下。
public static ILogger Create(string loggerType)
{
ILogger logger = null;
string loggerValue = WebConfigurationManager.AppSettings.Get(loggerType);
string[] loggerDll = loggerValue.Split(',');
string[] loggerTypeValue = loggerDll[0].Split('.');
Assembly asm = Assembly.Load(loggerTypeValue[0]);
Type type = asm.GetType(loggerDll[1]);
logger = (ILogger)Activator.CreateInstance(type);
return logger;
}
我想放弃使用Activator.CreateInstance()方法。对我来说,另类选择是什么?