我刚刚升级到beta4。我的代码成功编译,没有错误/警告但我无法启动我在IIS Express中托管的web api(通过点击F5
)。我收到以下错误:
无法确定要运行的适当版本的运行时。请参阅 http://go.microsoft.com/fwlink/?LinkId=517742了解更多信息。
描述:执行期间发生了未处理的异常 当前的网络请求。请查看堆栈跟踪了解更多信息 有关错误的信息以及它在代码中的起源。
异常详细信息:System.InvalidOperationException:无法 确定要运行的运行时的适当版本。看到 http://go.microsoft.com/fwlink/?LinkId=517742了解更多信息。
来源错误:
执行期间生成了未处理的异常 当前的网络请求。有关的来源和位置的信息 可以使用下面的异常堆栈跟踪来识别异常。
堆栈追踪:
[InvalidOperationException:无法确定合适的版本 运行时运行。见http://go.microsoft.com/fwlink/?LinkId=517742 欲获得更多信息。] System.Web.HttpRuntime.HostingInit(HostingEnvironmentFlags hostingFlags,PolicyLevel policyLevel,Exception appDomainCreationException)+303
[HttpException(0x80004005):无法确定合适的版本 运行时运行。见http://go.microsoft.com/fwlink/?LinkId=517742 欲获得更多信息。] System.Web.HttpRuntime.FirstRequestInit(HttpContext context)+9940016 System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +101 System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest) wr,HttpContext context)+261
版本信息:Microsoft .NET Framework版本:4.0.30319; ASP.NET版本:4.6.57.0
以下是dnvm list
的输出:
C:\ src \ web-api-skeleton [master]> dnvm list
活动版本运行时架构位置别名
- 1.0.0-beta4 clr x64 C:\ Users \ dpeden.dnx \ runtimes默认
1.0.0-beta4 clr x86 C:\ Users \ dpeden.dnx \ runtimes
1.0.0-beta4 coreclr x64 C:\ Users \ dpeden.dnx \ runtimes
1.0.0-beta4 coreclr x86 C:\ Users \ dpeden.dnx \ runtimes
1.0.0-beta4-11566 clr x86 C:\ Users \ dpeden.dnx \ runtimes
我还尝试在项目属性的Debug选项卡上显式设置运行时(Use Specific Runtime
),这似乎没有任何效果。
在从VS 2015 CTP 6和beta3升级到VS 2015 RC和beta4之前,我没有遇到此问题。
我该如何解决?
感谢。
答案 0 :(得分:0)
事实证明这是一个简单的问题。阅读https://github.com/aspnet/Announcements/issues/3后,我意识到我已将aspnet50
更改为dnx46
,而应该是dnx451
。在我的所有project.json
文件中进行了更改后,我的问题已得到解决。
段:
“frameworks”:{ “dnx451”:{} },