重定位依赖程序集的配置文件

时间:2016-11-07 14:50:03

标签: asp.net .net azure configuration nlog

我的应用程序使用NLog作为隐藏在MyLogging项目中的Facade后面的日志框架。该项目被许多网站引用,不会使它们直接依赖于NLog。编译后,NLog.config从日志记录项目结束到每个站点的bin个文件夹中,NLog会在启动期间自动找到它。这是可以理解的,非常好。但是,在bin文件夹中编辑任何文件会强制ASP.NET重新启动工作流程,因此我希望在常规NLog.config旁边添加web.config个文件夹

我正在努力实现的目标\避免:

  1. 将NLog配置保存在一个文件中,因为它对我的所有网站都是一样的
  2. 不将其嵌入网站web.config(不触发ASP.NET自动重启)
  3. 在使用msbuild命令构建项目后移动文件不是一个选项,因为站点已部署到Azure(移动文件将不会在发布过程中打包)
  4. 我想避免搞乱部署后脚本和硬编码E:\siteroot\0
  5. 之类的事情

    问题实际上并不是NLog特有的,因为我对标准app.config文件也有同样的问题。我有什么选择?

1 个答案:

答案 0 :(得分:0)

对于ASP.NET应用程序,建议设置:

  • “构建行动”到“内容”。否则它将不会被复制到根文件夹(带有web.config的文件夹)
  • “复制到输出目录”为“无”。否则它将被复制到您的bin文件夹。

请参阅: