2017-06-05 79 views
2

我想使用SignalR與aspnetcore 2.0.0預覽版。根據發行說明,預覽版應該支持signalR,並且我可以添加對「Microsoft.aspnetcoreSignalR」包的引用。
但是,我無法在IApplicationBuilder上找到MapSignalR擴展方法或類似useSignalR()的東西。
谷歌搜索爲此提供了很多UseAppBuilder擴展方法的例子。不過,我仍然感到迷惑MapSignalR與下面的代碼:如何使用SignalR與aspnetcore 2.0.0預覽

using Microsoft.AspNetCore.Builder; 

using Microsoft.Owin.Mapping; 
using Microsoft.Owin.Helpers; 
using Microsoft.Owin.Extensions; 
using Microsoft.Owin.Builder; 
using Owin; 
using System; 
using System.Collections.Generic; 
using System.Threading.Tasks; 

namespace MyNamespace 
{ 
    using AppFunc = Func<IDictionary<string, object>, Task>; 

    public static class SignalRExtensions 
    { 


     public static IApplicationBuilder UseAppBuilder(this IApplicationBuilder app, Action<IAppBuilder> configure) 
     { 
      app.UseOwin(addToPipeline => 
      { 
       addToPipeline(next => 
       { 
        var appBuilder = new AppBuilder(); 
        appBuilder.Properties["builder.DefaultApp"] = next; 

        configure(appBuilder); 

        return appBuilder.Build<AppFunc>(); 
       }); 
      }); 

      return app; 
     } 

     public static void UseSignalR2(this IApplicationBuilder app) 
     { 
      app.UseAppBuilder(appBuilder => appBuilder.MapSignalR()); 
     } 
    } 
} 

這是無法找到MapSignalR擴展方法。任何想法,如果我能找到這個將與aspnetcore一起工作的nuget包?還是有不同的機制來初始化signalR與aspnetcore 2.0.0預覽? 我正在使用Visual Studio 2017預覽版15.3,並安裝了.Net Core 2.0預覽版。

回答

1

我基本上有一組錯誤的塊參考。如果我只有aspnetcore 2.0.0 preview 1和相應的Microsoft.aspnetcore.signalR 1.0.0預覽包,則已有UseSignalR()方法作爲IApplicationBuilder的擴展方法,我們不需要任何上述代碼。