NuGet不会复制配置文件。

7

我已经尝试了很多不同的方法,但似乎都没有达到预期效果。

我想与我的库分享一个示例配置(或图像或其他)文件,供其他人使用和借鉴。我试图默认只是将其包含在nuget包中,通过*.nuspec*.csproj方式进行。但这两种方式都无法实现。

关于*.nuspec部分,我已经尝试过以下操作:

<file src="bin\$configuration$\example.mylib.config" target="lib\net45" />
<file src="bin\$configuration$\example.mylib.config" target="build" />
<file src="bin\$configuration$\example.mylib.config" target="bin" />

我也尝试过这种方法,但这只是把文件复制到其他项目的源文件中,这不是我想要的。我希望它只出现在构建的输出中。
<file src="bin\$configuration$\example.mylib.config" target="content" />

对于*.csproj部分,我已经尝试将文件的build action设置为contentresourceembedded resourceNone
是否有任何方法? 是否有一种方法可以告诉nuget,拿起这个文件,并像我提供的dll一样需要在构建时附带它?

你曾经找到解决方案吗?我也遇到了同样的问题。 - The Fiddler
1
@TheFiddler 很不幸,没有,但我不知道为什么他们把它省略了。目前我唯一能想到的方法是将其放入脚本中并让脚本打印出来。这可能是最不好的做法... - Kjellski
1个回答

1

一个想法是执行配置文件转换。与其直接部署配置文件,您可以修改项目中的app.configweb.config,并提供样例供用户应用。或者,如您在评论中所提到的,您可以添加PowerShell脚本来执行您考虑的操作。


1
一个晚回答,但我想这可能会帮助其他人。 - techvice
谢谢你还是写下来了。虽然这可能不是某人正在寻找的答案,但为了“结案”,我会将你的回答标记为答案。你对此满意吗? - Kjellski
@Kjellski,对我来说那个方法可行。如果其他人有类似的问题,他们可以提出一个新的问题。 - techvice

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接