我正在尝试使用 NConfig 将可选的每个开发人员配置设置添加到我的解决方案中。我告诉 NConfigConfig\Custom.config
用作它的覆盖文件。但是,我希望这是可选的。因此,如果该文件不存在,它将回退到使用Web.config
.
NConfig 可以处理这个问题,但问题是如果文件不存在,解决方案就不会构建。我需要让 Visual Studio 将文件复制到输出目录,以便 NConfig 可以看到它,但是如果我将文件引用添加到解决方案并将“构建操作”设置为“始终复制”或“如果更新则复制”,我会得到一个如果文件系统上不存在该文件,则出错。
如何在我的解决方案中拥有一个“可选”文件,它可能存在也可能不存在,如果存在,它将文件复制到输出目录?
通过将宏用于构建事件,您可以根据解决方案的当前路径结构指定源和目标的路径:
在构建后事件中,使用以下脚本:
if exist "$(ProjectDir)"Custom.config xcopy "$(ProjectDir)"Custom.config "$(TargetDir)Config\" /y
请注意宏标记周围的引号。如果您的目录结构包含空格,引号将说明它们。此脚本会将文件复制到解决方案当前输出目录中的“Config”子文件夹(如果该文件夹不存在,则创建该文件夹)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句