在 StackOverflow 上快速搜索后发现以下问题,我认为它涵盖了您所要求的内容:
在 nuget 包中将内容文件设置为“复制本地:始终”
您可以将文件放入内容目录NuGet 包内。
在您的 .nuspec 文件中:
<file src="css\mobile\*.css" target="content\css\mobile" />
当您将其安装到项目中时,它会将 css\mobile 目录添加到您的项目以及该目录中的文件。
但是,这只会将文件添加到项目中。为了将它们复制到输出目录,您需要使用 PowerShell 脚本来修改项目项的复制本地信息。
另一种可能是更好的方法是使用自定义MSBuild .targets 文件。这将作为导入添加到您的项目中,然后在 .targets 文件中,您可以添加所需的文件并指定副本以直接输出信息,就像它是项目的一部分一样。 NuGet .nupkg 文件内容:
\build
\Net45
\MyPackage.targets
\Foo.txt
MyPackage 是上面 NuGet 包的 id。
在 .targets 文件中指定文件(例如 Foo.txt)。
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<None Include="Foo.txt">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</None>
</ItemGroup>
</Project>