gpt4 book ai didi

c# - 升级到 SignalR-2.0.0-beta2 时未生成/signalr/hubs

转载 作者:太空狗 更新时间:2023-10-29 20:05:12 30 4
gpt4 key购买 nike

我有一个运行在 SignalR 1.1.2 上的工作聊天应用程序,它将被放置到负载平衡服务器上,因此我需要实现一个背板解决方案来同步服务器。

这是一个 ASP.NET MVC4 .NET 4.5 应用程序。使用 SignalR Hubs,而不是持久连接。该应用程序在客户端利用 AngularJS 来处理 ui 绑定(bind)和更新。

我已按照 here 列出的步骤进行操作实现 sql server 背板并使用 1.x 到 2.0 迁移中概述的步骤 here .该解决方案已构建,但当点击使用 SignalR 的页面时,“/signalr/hubs”脚本引用返回 500 错误。

这是我到目前为止采取的步骤列表。

  • 使用 nuget,删除了与 SignalR 1.1.2 相关的所有引用和依赖项。仔细检查/bin 和/packages 目录以确保它们不再引用任何旧库。这是在 github issue 上找到的每条评论与 2.0 升级有关,称卸载并重新安装 SignalR 是升级的方法。

  • 已通过包管理器控制台 (PMC) 安装 SignalR 2.0.0-beta2 Install-Package Microsoft.AspNet.SignalR -Pre

  • 使用 PMC 安装 SQL Server Messaging Backplane Install-Package Microsoft.AspNet.SignalR.SqlServer -Pre

  • 已删除 RouteTable.Routes.MapHubs();来自 Global.asax

  • 在项目的根目录中创建启动类。

Startup.cs

using Microsoft.AspNet.SignalR;
using Microsoft.Owin;
using Owin;

namespace My.NameSpace
{
public class Startup
{
public void Configuration(IAppBuilder app)
{
app.MapHubs();
}
}
}
  • 已添加 <add key="owin:AppStartup" value="My.NameSpace.Startup, App_Code"/><appSettings>在 Web.config 中

  • 在 Startup.Configuration() 方法中放置一个断点,并验证它在应用程序启动时被命中并无异常地执行 app.MapHubs

  • 我没有使用持久连接,所以没有包括 app.MapConnection<MyConnection>("/echo"); 这行并且我没有遇到任何模棱两可的定义问题。

  • 聊天应用页面引用了以下库

    • jquery-1.8.3.js
    • jquery.signalR-2.0.0-beta2.js
    • <script src='/signalr/hubs'></script>
    • AngularJS v1.1.5
  • 项目运行时,/signalr/hubs聊天应用页面找不到

  • chrome 开发工具返回 500 Internal Server Error对于 /signalr/hubs在网络选项卡上调用。

  • 文件系统没有 /signalr/hubs目录

我的下一步是看看我是否可以使用非常基本的集线器创建一个新的解决方案,看看我是否可以让 Signal 2.0 正常工作。如果是这样,我将比较这两个解决方案以查看不同之处。

有没有人知道我还可以检查或研究什么来使它正常工作?

具有类似问题的相关 StackOverflow 问题:one , two

最佳答案

事实证明,通过将项目配置更改为使用本地 IIS Web 服务器而不是 Visual Studio Developer Server (Cassini),问题已得到解决。

通过在我的浏览器中转到 /signalr/hubs url 并查看服务器错误找到了原因

System.PlatformNotSupportedException: 此操作需要IIS集成管道模式。

一些谷歌搜索发现了这个 page其中表示错误是由 ASP.NET Development Server 不支持集成管道模式引起的。

您可以通过右键单击项目更改使用的服务器,选择属性,点击 Web 选项卡,然后在服务器部分下选择“使用本地 IIS Web 服务器”。

关于c# - 升级到 SignalR-2.0.0-beta2 时未生成/signalr/hubs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17959361/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com