我有一个像这样的nuget包:
/build/SharedTargets.targets
/content/File.cs
SharedTargets.targets如下:
<Compile Include="$(MSBuildThisFileDirectory)\..\content\File.cs">
<Link>File.cs</Link>
<Visible>True</Visible>
</Compile>
有没有一种方法可以更优雅地引用内容文件?即如何正确构建内容的相对路径。
答案 0 :(得分:2)
基本上就是这样做的方法。
我建议不要将.cs文件放在content
子文件夹中,因为它们可能最终出现在旧版package.config项目的项目目录中。
如果仅使用PackageReference
来引用程序包,则可以改用contentFiles-NuGet功能,可让您将具有关联的构建操作(Compile,EmbeddedResource等)的文件逻辑添加到构建中不需要.targets文件的过程。参见Using the contentFiles element for content files
用于基本的NuGet机制。