2

我正在尝试将 SignalR 与 aspnetcore 2.0.0 预览一起使用。根据发行说明,预览版应该支持 signalR,我可以添加对“Microsoft.aspnetcoreSignalR”包的引用。
但是,我无法在 IApplicationBuilder 上找到MapSignalR扩展方法或类似的东西。 谷歌搜索这个给出了很多扩展方法的例子。但是,我仍然坚持使用以下代码:useSignalR()
UseAppBuilderMapSignalR

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 包有什么想法吗?或者是否有不同的机制来使用 aspnetcore 2.0.0 预览初始化 signalR?我正在使用安装了 .Net core 2.0 预览版的 Visual Studio 2017 预览版 15.3。

4

1 回答 1

1

我基本上有一组错误的掘金参考。如果我只有 aspnetcore 2.0.0 preview 1 和相应的 Microsoft.aspnetcore.signalR 1.0.0 preview 包,那么已经有一个UseSignalR()方法可以作为扩展方法IApplicationBuilder,我们不需要上面的任何代码。

于 2017-06-08T20:06:39.943 回答