【问题标题】:Installing Microsoft.Azure.SignalR.AspNet causes method not implemented runtime error when deployed to a server but runs fine on Visual Studio 2017安装 Microsoft.Azure.SignalR.AspNet 会在部署到服务器时导致方法未实现运行时错误,但在 Visual Studio 2017 上运行良好
【发布时间】:2019-02-15 19:10:24
【问题描述】:

错误:

“MyProject.AppStart.Selector”类型中的方法“MyController”来自 程序集'MyProject,版本=1.0.0.0,文化=中性, PublicKeyToken=......' 没有实现。

背景: 我有一个ASP.NET 项目,其中target 框架设置为.NET Framework 4.6.2。安装Microsoft.Azure.SignalR.AspNet1.0.0-preview1-103a17from nuget package manager 后,它在Visual Studio 2017 上构建并运行良好。完全没有问题。当我将版本部署到我的服务器并尝试访问其任何服务时,我收到上述错误。该方法在实现System.Web.Http.Dispatcher.IHttpControllerSelector的类中实现。

配置:

  • 代码工作的机器:Windows 10 版本 1809(操作系统内部版本 17763.316)。 Visual Studio 2017 15.9.6。

  • 代码无法运行的机器:Windows Server 2012 R2 版本 6.2 Build 9200。IIS 版本 8.5.9600.16384。

我尝试了什么:

  • 再次清理/重建部署。
  • 删除objbin文件夹,重新发布和部署。
  • 已按照建议 here 删除了 CachedAssessmbly。
  • 将配置从 Release 更改为 Debug
  • Windows Server 2012 R2 机器上安装Azure SDK
  • 尝试安装Microsoft.Azure.SignalR.AspNet的依赖而不直接安装Microsoft.Azure.SignalR.AspNet。似乎错误开始于安装Microsoft.Azure.SignalR.ProtocolsMicrosoft.Azure.SignalR.Protocols 的依赖关系是:

所有这四个依赖项都是在我安装 Microsoft.Azure.SignalR.Protocols 时添加的,即它们尚未被使用。

我似乎找不到问题所在。

更新: 我在上面提到的 Windows 10 机器上部署了文件夹,并使用 IIS Manager 创建了一个应用程序。该应用程序在没有 Visual Studio 的同一台机器上运行良好。

【问题讨论】:

    标签: c# visual-studio azure iis azure-signalr


    【解决方案1】:

    Windows Server 2012 R2 机器上,我最初安装的是.NET Core 2.2 runtime 而不是SDK。我按顺序安装了以下内容:

    1. .NET Core 2.2 SDK(部署还是不行)
    2. .NET Framework 4.7.2 开发包(要求重启,推迟)
    3. .NET Framework 4.6.1 开发包

    安装.NET Framework 4.6.1 Dev Pack后,我重新启动了。现在部署工作

    我无法确定解决方案,但我的猜测是安装 .NET Core 2.2 SDK 解决了这个问题。安装完成后,安装窗口提示Microsoft.AspNetCore的某个版本已安装。它没有要求重新启动,但我猜.NET Core 2.2 Runtime 已经安装并被另一个应用程序使用,因此需要重新启动。

    很奇怪Microsoft.AspNetCore没有和.NET Core 2.2 Runtime一起安装。

    修复此问题需要相当长的时间,因为 typeloadexception 可能在许多其他情况下出现。

    希望这个解决方案也能帮助其他人。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-14
      相关资源
      最近更新 更多