NLog没有找到或加载配置文件

Nei*_*eil 5 c# config ninject nlog

我正在编写一个应用程序并使用Ninject创建一个Logging工厂的实例,该实例可用于创建Nlog Logger.我有自己的Logger类,它包装了Nlog Logger类

我有一个处理注入的IOC项目和一个Logging项目,它承载LoggerFactory和Logger类.

我想要的原因是让所有其他项目共享一个日志记录配置,而不是必须分别在每个项目中包含Nlog dll和config.

它的构建和运行都很好但是当LoggerFactory创建一个记录器时

public ILogger GetLogger<T>()
{
    NLog.Logger nLogLogger = NLog.LogManager.GetLogger(typeof(T).ToString());

    return new Logging.Logger(nLogLogger);
}
Run Code Online (Sandbox Code Playgroud)

配置为null表示NLog.dll没有找到NLog.config文件.

NLog.LogManager.Configuration 
Run Code Online (Sandbox Code Playgroud)

我按照说明说并将NLog.config命名为NLog.dll.nlog,将其复制到bin目录,我可以在NLog.dll旁边看到它

从Nlog文档来看,这应该足够http://nlog-project.org/wiki/Configuration_file但它没有被发现."NLog.dll所在目录中的NLog.dll.nlog"

我将NLog.dll.nlog文件标记为内容,将copyToLocal标记为true.

谢谢你的帮助尼尔

Nei*_*eil 9

我今天早上设法让这个工作

有两个正在运行的项目使用日志记录 - 一个MVC应用程序和一个WEBAPI应用程序.问题是在构建解决方案时,NLog.config文件被复制到应用程序的BIN文件夹中.配置文件需要与web.config文件一起位于项目根目录中.

为了解决这个问题,我在Logging项目上创建了一个post build事件,将配置文件复制到MVC应用程序和WEBAPI应用程序的项目根目录.

日志记录现在正常.