从NuGet安装SignalR(Newtonsoft.Json出现问题)

问题描述:

我试图通过NuGet安装SignalR。说到安装Json,它说由于PowerShell策略,安装失败。 我找到了this post来解释在这种情况下要做什么。从NuGet安装SignalR(Newtonsoft.Json出现问题)

不幸的是,改变设置被我们公司的政策阻止,我无法改变这个价值。

我做的下一步是手动下载Json.NET并在我的项目中手动引用。我希望NuGet能够找到参考并忽略安装。但是这并没有奏效。

最后来到我的问题:有没有办法“告诉”NuGet在安装SignalR时忽略Json.NET依赖项?

我正要尝试Sirwan的建议,直到我意识到由于PS的执行策略,我甚至无法在Package Manager控制台中运行任何命令。

解决方案:

实际上,你可以改变MachinePolcy执行政策不 通过GPO去!你需要去在注册表和编辑 以下键HKLM:\ SOFTWARE \政策\微软\的Windows \ PowerShell和 的ExecutionPolicy值更改为绕过

发现的解决方案here

这实际上可以同时解决我安装Json.NET时遇到的另一个问题。

Install-Package命令有一个标志忽略的依赖关系:

Install-Package Microsoft.AspNet.SignalR -IgnoreDependencies 

安装-封装[-Id] [-IgnoreDependencies] [-ProjectName ] [-Version] [ - 源] [ - IncludePrerelease] [-Force] [-FileConflictAction] [-DependencyVersion ] [-WhatIf]

-IgnoreDependencies 
     Installs only this package and not its dependencies. 

     Required: false 

more info.

+0

嗨Sirwan,是的,这将工作,但后来我在一个依赖项的恶梦,因为整个SignalR依赖树包含很多安静的包。任何其他可能性? – gsharp

+0

嗨,首先我建议你安装'Microsoft.AspNet.SignalR.Core'包,因为它依赖于JSON.NET,然后安装'Microsoft.AspNet.SignalR' –