在使用实体框架的项目中在Visual Studio 2017 v15.9.6中加载程序包管理器控制台时,出现以下错误:
\ packages \ EntityFramework.6.2.0 \ tools \ init.ps1无法加载,因为其操作被软件限制阻止 策略,例如使用组策略创建的策略。 在线:1个字符:45个 + ... rgs + = $ _}; &'C:\ Bitbucket \ project-path \ packages \ EntityFramework.6.2。 ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~ + CategoryInfo:SecurityError:(:) [],PSSecurityException + FullyQualifiedErrorId:UnauthorizedAccess
这使我无法运行特定于Entity Framework的命令,例如“ Update-Database”或“ Add-Migration”。
这是我尝试过的事情:
在组策略编辑器中,对于“计算机配置”和“用户配置”,我都启用了“管理模板\ Windows组件\ Windows PowerShell”中的“打开脚本执行”设置。两种配置的设置都将“执行策略”设置为“允许所有脚本”。
我已经在程序包管理器控制台中本地尝试将“ Process”范围设置为“ Bypass”和“ Unrestricted”,然后手动加载Entity Framework init.ps1脚本。我收到同样的错误。
当我运行命令“ Get-ExecutionPolicy -List”时,这是我的结果”
Scope ExecutionPolicy
----- -----------------------
MachinePolicy Undefined
UserPolicy Unrestricted
Process Undefined
CurrentUser Unrestricted
LocalMachine Unrestricted
以上所有步骤之后,我希望能够正常加载Visual Studio,启动程序包管理器控制台,并且在尝试运行Entity Framework init.ps1脚本时不会收到任何错误。我一定缺少某些东西或做错了什么。我该怎么做才能使Visual Studio正常工作?
更多信息是这是一台加入公司域的计算机,但是没有其他开发人员遇到此问题。管理员没有设置可阻止我运行脚本的组策略。
答案 0 :(得分:1)
由于Microsoft的无效证书,可能会发生错误。在“不受信任的发布者”选项卡上签入控制面板=> Internet选项=>内容=>证书。从该列表中删除Microsoft Corporation。
听起来很奇怪,但是对我有用。
答案 1 :(得分:0)
我遇到了与您相同的问题。我尝试更改“组执行策略”,但由于对本地计算机的某些限制(可能由我的学校管理员设置),因此在我的情况下不起作用。在另一个项目中,我使用6.1.2进行了迁移等问题。