【发布时间】: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。
我尝试了什么:
- 再次清理/重建部署。
- 删除
obj和bin文件夹,重新发布和部署。 - 已按照建议 here 删除了 CachedAssessmbly。
- 将配置从
Release更改为Debug。 - 在
Windows Server 2012 R2机器上安装Azure SDK。 - 尝试安装
Microsoft.Azure.SignalR.AspNet的依赖而不直接安装Microsoft.Azure.SignalR.AspNet。似乎错误开始于安装Microsoft.Azure.SignalR.Protocols。Microsoft.Azure.SignalR.Protocols的依赖关系是:
所有这四个依赖项都是在我安装 Microsoft.Azure.SignalR.Protocols 时添加的,即它们尚未被使用。
我似乎找不到问题所在。
更新:
我在上面提到的 Windows 10 机器上部署了文件夹,并使用 IIS Manager 创建了一个应用程序。该应用程序在没有 Visual Studio 的同一台机器上运行良好。
【问题讨论】:
标签: c# visual-studio azure iis azure-signalr