我有五个不同的记录器和一个包装类:
internal class CommonNLogResolver : ICommonLogger
{
private readonly NLog.Logger commonLog;
private readonly NLog.Logger errorLog;
private readonly NLog.Logger dataBaseLog;
private readonly NLog.Logger logExceptionLogger;
private readonly NLog.Logger clientLogger;
public CommonNLoggerResolver()
{
commonLog = NLog.LogManager.GetLogger(Constants.CommonLog);
errorLog = NLog.LogManager.GetLogger(Constants.ErrorLog);
dataBaseLog = NLog.LogManager.GetLogger(Constants.DBLog);
logExceptionLogger = NLog.LogManager.GetLogger(Constants.LogExceptionLog);
clientLogger = NLog.LogManager.GetLogger(Constants.ReportLog);
}
}我查看了LogFactory.cs中的NLog,因为它有一个用于记录器的缓存,所以我不知道什么样的生活方式适合我的包装类。
因此,我的问题是,我应该注册这个类singleton、瞬态还是scope?
此外,我还使用SimpleInjector进行依赖注入。
发布于 2017-04-09 19:15:23
NLog是线程安全的,所以您可以安全地重用您的记录器。你能做到的。
https://stackoverflow.com/questions/42409020
复制相似问题