【发布时间】:2015-12-27 15:56:15
【问题描述】:
我刚刚开始在 VS2015 中使用 DNX 1.0.0-rc1-update1。我的第一个应用程序是一个“控制台应用程序(包)”项目。一切正常,除了 NLog 日志记录。我怀疑这是因为 NLog.config 没有被复制到输出文件夹。如何告诉 VS 通过 project.json 将此文件复制到输出文件夹?
我试过像这样添加一个“资源”变量,但它不起作用:
project.json
...
"resource":"NLog.config",
...
编辑 1: 我使用的是 dnx451,所以兼容性不是问题。
编辑 2: 我将以下内容添加到 project.json
"scripts": {
"postbuild": [
"%project:Directory%/../scripts/copy_resources.bat \\\"%project:Directory%\\\" \\\"%project:Directory%/../artifacts/bin/%project:Name%/%project:Version%/dnx451\\\""
]
}
copy_resources.bat
echo "Running script" >> C:\logs\log.txt
echo %1 >> C:\logs\log.txt
echo %2 >> C:\logs\log.txt
xcopy %1\NLog.config %2 /U /Y
在 VS 的输出窗口中没有任何内容表明该脚本已实际运行。此外,log.txt 是空的。
如何调试构建过程?
【问题讨论】:
-
您是否尝试过在 project.json 中使用 NLog.config 的路径?您应用的方法通常应该有效:stackoverflow.com/questions/31972571/…
-
您可能需要更新您的标题。您在 project.json 文件中尝试的内容会将
NLog.config编译到程序集中。您在帖子中描述的是将NLog.config复制到输出目录。 -
不确定你做错了什么。我唯一能想到的是 NLog 不支持 DNXCORE50,所以从你的 project.json 中删除它。微软自己的样本可能会有所帮助。 github.com/aspnet/Logging/tree/1.0.0-rc1/samples/SampleApp
标签: c# visual-studio-2015 dnx project.json