【问题标题】:ASP.NET vNext on Mono, install new runtime versionMono 上的 ASP.NET vNext,安装新的运行时版本
【发布时间】:2015-03-05 13:50:58
【问题描述】:

我试图从这里https://github.com/aspnet/Home 运行 asp.net vnext 演示应用程序, ConsoleApp 工作正常,但 HelloWeb 在我尝试启动 kestrel 时抛出 System.IO.FileNotFoundException 异常。

我有以下环境:

  • 操作系统 Debian
  • 单声道版本 3.12.0
  • Vnext 运行时版本 - 1.0.0-beta4-11169

我认为版本不匹配的问题。我有 runtime 版本的 beta4project.json 文件,它们是关于 beta3 程序集的。

所以,我需要安装运行时版本 beta3。一般来说,我知道首先我必须安装 使用 kvm install 命令运行时 beta 3 版本,然后使用 kvm use 命令切换到 beta 3。

不过这是一般情况,能不能给详细的说明一下如何安装 带有正确命令示例的新版本运行时?

【问题讨论】:

  • 当您收到FileNotFoundException 时,最好发布消息说明找不到哪个文件。
  • "System.IO.FileNotFoundException: 无法加载文件或程序集 'Microsoft.Framework.ConfigurationModel.IConfiguration,Version=0.0.0.0,Culture=neutral,PublicKeyToken=null' 或其依赖项之一。文件名:'Microsoft.Framework.ConfigurationModel.IConfiguration, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null' at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object ,object[],System.Exception&) 在 System.Reflection.MonoMethod.Invoke
  • 据我所知,ASP.NET 5 (vNext) 在 .NET Core 上运行,它本身就是跨平台的。如果您需要 Core 未提供的框架功能(典型的 Web 应用程序不应该是这种情况),您只需要完整的 .NET。这意味着您根本不需要 Mono。
  • 尝试这些命令:export KRE_FEED=https://www.nuget.org/api/v2 然后 kvm 升级
  • 来自 aspnet github 页面:“注意:目前 OSX/Linux 上没有可用的 Core CLR。​​只有一个平台 (mono45) 和一个架构 (x86)。”

标签: asp.net .net asp.net-mvc mono asp.net-core


【解决方案1】:

不要在测试版之间混用版本,因为这会导致问题。在撰写本文时还升级到最新版本,即 Beta 7。按照官方announcement 的说明进行升级。

【讨论】:

    猜你喜欢
    • 2013-07-10
    • 2014-08-18
    • 2016-01-16
    • 2014-12-04
    • 2015-03-02
    • 2016-03-04
    • 2022-12-01
    • 1970-01-01
    • 2023-03-26
    相关资源
    最近更新 更多