我一直在将我的项目迁移到Visual Studio 2015 RC。我还将它重构为单独的项目。现在我需要为实体框架中的模型更改添加迁移,但是一旦打开包管理器控制台,我就会收到以下错误消息:
Set-DefaultScaffolder:无法获取EnvDTE.DTE的实例在C:\ Users ... \ Visual Studio 2010 \ Projects \ MyProject \ packages \ T4Scaffolding.Core.1.0.0 \ tools \ init.ps1:50 char :30
如果我清除控制台并再试一次,我会遇到“遇到异常” - 活动日志中有更多信息。检查活动日志,例外是:
System.ArgumentOutOfRangeException:指定的参数不在 有效值范围。参数名称:span at Microsoft.VisualStudio.Text.SnapshotSpan..ctor(ITextSnapshot快照, 跨度) NuGetConsole.Implementation.Console.WpfConsoleClassifier.GetClassificationSpans(SnapshotSpan 跨越 Microsoft.VisualStudio.Text.Classification.Implementation.ClassifierTagger.d__1.MoveNext() 在 Microsoft.VisualStudio.Text.Tagging.Implementation.TagAggregator`1.d__1.MoveNext()
我意识到我已经删除了一些我可能不应该拥有的软件包。所以我重新安装了这些:
ModelScaffolding 0.9.2
MvcScaffolding 1.0.9
T4Scaffolding 1.0.8
这似乎已经取消了第二个异常(ArgumentOutOfRangeException)。但是,现在当我尝试Add-Migration
时,我得到了
Join-Path:无法将参数绑定到参数'Path',因为它是 空值。在C:\ Users ... \ Visual Studio 2010 \项目\ MyProject的\包\ EntityFramework.6.1.0 \ TOOLS \ EntityFramework.psm1:713 炭:27
我尝试卸载并重新安装Entity Framework。我注意到在安装过程中再次显示了Join-Path错误,但是包管理器继续,并报告安装成功。我尝试Add-Migration
然后我在Visual Studio Express 2013中打开了解决方案。我仍然收到初始Cannot get an instance of EnvDTE.DTE
错误,但我可以清除控制台窗口,我可以添加迁移 - P !.
我还是想摆脱那条错误信息......并使用VS 2015 ......
答案 0 :(得分:0)
NuGet VS扩展中有error。您可以通过安装latest NuGet(尚未通过VS提供)来解决此问题。这可能需要更新Powershell和/或Windows Management Framework。