我创建了一个简单的 NuGet 包,其中在 Tools 文件夹中包含一个 Init.ps1 脚本。脚本开始如下:
param($installPath, $toolsPath, $package, $project)
$postBuildEvent = $project.Properties.Item("PostBuildEvent").Value
在 Visual Studio 2012 项目中安装包时,我在 $project.Properties.Item 上收到错误,因为 $project.Properties 为空:“您不能在空值表达式上调用方法”。我检查了 $project.Properties 是否为空,它是。
问题是,为什么它是空的。我只是尝试更改构建后事件(如此处所述)。有人有线索吗?
编辑: 如果代码在 Install.ps1 中,它可以工作。首次安装包时,项目属性似乎不可用。