我希望在“ copy local = false”模式下在我的程序包中引用dll。换句话说,我不希望我的程序包附带的dll在构建后被复制到输出目录中。
在“ packages.config”方案中可以完成此操作的方法是在tools / install.ps1文件中包含以下脚本。
param($installPath, $toolsPath, $package, $project)
$asms = $package.AssemblyReferences | %{$_.Name}
foreach ($reference in $project.Object.References)
{
if ($asms -contains $reference.Name + ".dll")
{
$reference.CopyLocal = $false;
}
}
我知道具有PackageReference功能的最新Nuget版本仅使用init.ps1脚本。但是我没有任何线索,我该写什么脚本。
我也知道该软件包的用户可以添加...
<ExcludeAssets>Runtime</ExcludeAssets>
要做到这一点。但是,作为软件包的作者,我真的很想执行这种行为。那么可以在脚本中添加它吗?