有没有一种创建NuGet程序包的方法,当该程序包安装到项目中时,它将添加对dll的引用,且“ Copy Local”设置为false?

我认为这是“ install.ps1”文件中的某种脚本。

最佳答案

是的,您可以通过install.ps1来完成此操作。

这是一个示例install.ps1,它将在每次运行时翻转System.dll上的标志。使用此示例,您应该能够了解如何做所需的事情:

param($installPath, $toolsPath, $package, $project)

foreach ($reference in $project.Object.References)
{
    if($reference.Name -eq "System")
    {
        if($reference.CopyLocal -eq $true)
        {
            $reference.CopyLocal = $false;
        }
        else
        {
            $reference.CopyLocal = $true;
        }
    }
}


但是该MSDN文档应该有所帮助。


Object Hanselman使用解析为VSProject Interface.
$project变量NuGet使您可以解析为Project Interface.

关于nuget - 创建NuGet软件包,该软件包将安装引用并将Copy Local设置为false,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11105286/

10-14 12:02
查看更多