Visual studio 如何更新解决方案中以特定名称开头的所有NuGet包?

Visual studio 如何更新解决方案中以特定名称开头的所有NuGet包?,visual-studio,powershell,nuget,Visual Studio,Powershell,Nuget,例如,我正在寻找这样一个命令,它将只更新以名称PackagePrefix开头的包: Update-Package "PackagePrefix.*" 我尝试了的“评论”部分中提供的脚本,但它引发了以下错误: Get-Package | Where Id -like "Contoso.*" | Sort-Object -Property Id -Unique | foreach { Update-Package $_.Id } Where对象:无法绑定参数“FilterScript”。无法将“

例如,我正在寻找这样一个命令,它将只更新以名称
PackagePrefix
开头的包:

Update-Package "PackagePrefix.*"
我尝试了的“评论”部分中提供的脚本,但它引发了以下错误:

Get-Package | Where Id -like "Contoso.*" | Sort-Object -Property Id -Unique | foreach { Update-Package $_.Id }
Where对象:无法绑定参数“FilterScript”。无法将“System.String”类型的“Id”值转换为类型
“系统、管理、自动化、脚本块”。
第1行字符:20

+Get Package | Where在稍作修改之后,我发现我使用的是一个非常旧的Powershell版本(v2.0),基于下面的脚本,现在可以工作了。我将
Where
替换为
Where对象

Get-Package | Where-Object {$_.Id -like "Contoso.*"} | Sort-Object -Property Id -Unique | foreach { Update-Package $_.Id }

在做了一点修改之后,我发现我使用的是一个非常旧的Powershell版本(v2.0),基于下面的脚本,现在可以工作了。我将
Where
替换为
Where对象

Get-Package | Where-Object {$_.Id -like "Contoso.*"} | Sort-Object -Property Id -Unique | foreach { Update-Package $_.Id }

这个脚本对我来说很好…我有Powershell 2.0和NuGet 3.0。由于我的Powershell版本,可能会出现问题。该脚本对我来说很好…我有Powershell 2.0和NuGet 3.0。这可能是一个问题,因为我的Powershell版本。