Msbuild Nuget目标,如何将重命名的内容文件发送到解决方案输出文件夹?
我创建了一个带有默认json配置文件config.json.pp的Nuget包。在安装时,它被转换并添加为内容;'config.json'。我还在包的build文件夹中添加了一个目标文件,它根据包安装所在的程序集根命名空间重命名配置文件:Msbuild Nuget目标,如何将重命名的内容文件发送到解决方案输出文件夹?,msbuild,package,nuget,target,Msbuild,Package,Nuget,Target,我创建了一个带有默认json配置文件config.json.pp的Nuget包。在安装时,它被转换并添加为内容;'config.json'。我还在包的build文件夹中添加了一个目标文件,它根据包安装所在的程序集根命名空间重命名配置文件: <?xml version="1.0" encoding="utf-8" ?> <Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> <I
<?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<ConfigFile Include="config.json"/>
</ItemGroup>
<Target Name="CopyConfigFile" AfterTargets="Build;Rebuild">
<Copy SourceFiles="@(ConfigFile)" DestinationFiles ="@(ConfigFile->'$(OutDir)\$(RootNameSpace)%(Extension)')" />
</Target>
</Project>
在包含更多程序集的解决方案中生成程序集时,不会将其添加到输出目录,只会添加到安装包的程序集的bin\$(配置)文件夹中
如何将文件添加到解决方案主应用程序的输出目录中?您可以使用链接元数据来执行此操作:
<ItemGroup>
<Content Include="config.json"
Link="$(RootNameSpace)%(Extension)"
CopyToOutputDirectory="PreserveNewest"
Visible="False"
Condition="Exists('config.json')" />
</ItemGroup>