【问题标题】:SignalR / Ajax method callingSignalR/Ajax 方法调用
【发布时间】:2018-09-06 23:00:19
【问题描述】:

我目前正在将现有解决方案迁移到 SignalR(用于实时更新目的)。旧服务器端是 ASP.NET MVC,现在是 WPF 应用程序自托管 SignalR。我想让我的解决方案尽可能地向后兼容客户端,但是所有现有的客户端代码都使用 Ajax 'post/get' 语法来调用这样的服务器方法:

 $.ajax({
          url: 'api/Controller/Action',
          type: "POST",
          success: function (result) { ...   },
  });

是否可以在不添加集线器连接和/或更改客户端代码的情况下以任何方式从 SignalR 的角度拦截这些方法调用?

【问题讨论】:

    标签: c# asp.net ajax wpf signalr


    【解决方案1】:

    经过一些解决方法后,我找到了解决方案,因此如果寻找解决同类问题的方法,我将其发布在这里。

    SignalR SelfHostWebApi SelfHost 都可以使用

    在我的 wpf 应用程序的 Startup.Cs 类中,我只是将额外的 HttpConfiguration 放在 SignalR 旁边。

        public void Configuration(IAppBuilder app)
        {
            HttpConfiguration config = new HttpConfiguration();
            config.Routes.MapHttpRoute(
                name: "DefaultApi",
                routeTemplate: "api/{controller}/{action}/{id}",
                defaults: new { id = RouteParameter.Optional }
            );
            // SignalR configuration etc...
    
        }
    

    然后我创建了一个派生自 ApiController 的自定义类,并像标准 MVC 控制器一样使用它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-04
      • 2021-01-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多