我想在Asp.Net Core 1.1中創建實時應用程序,但我不能再使用signalr在我的應用程序中,幫助我選擇哪種框架對我更好?我必須選擇node.js或MicroSoft有解決方案嗎?我可以使用與signalr類似的Alternative框架? !SignalR In ASP.Net Core〜1.1
Microsoft.AspNetCore版本1.1.1 Microsoft.AspNetCore.Mvc版本1.1.1
我想在Asp.Net Core 1.1中創建實時應用程序,但我不能再使用signalr在我的應用程序中,幫助我選擇哪種框架對我更好?我必須選擇node.js或MicroSoft有解決方案嗎?我可以使用與signalr類似的Alternative框架? !SignalR In ASP.Net Core〜1.1
Microsoft.AspNetCore版本1.1.1 Microsoft.AspNetCore.Mvc版本1.1.1
適用於Visual Studio 2017和.NET Core 1.1.1。
好像你可以在ASP.NET核心使用SignalR 2,現在1.1的應用程序,只要他們的目標是完整的.NET框架而不是.NET核心。
爲了這個工作,你需要爲OWIN創建一個Middleware-Wrapper。 Yatajga有a nice sample over at MSDN。
這裏有一個有趣的現象(取自說樣品):
using Microsoft.Owin.Builder;
using Owin;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Builder;
namespace RealTimeDataEditor
{
using AppFunc = Func<IDictionary<string, object>, Task>;
public static class BuilderExtensions
{
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());
}
}
}
而這樣一來,你可以簡單地調用app.UseSignalR2();
配置()方法中的Startup.cs文件。
聲明:SignalR 2尚未針對ASP.NET Core開發,因此在生產中使用SignalR 2時可能會遇到一些問題。
僅供參考https://dotnet.myget.org/F/aspnetcore-ci-dev/api/v3/index.json(1.0.0 *)中的signalr軟件包現在只針對.NETStandard版本= v2.0平臺。
老包(0.2.0 *)用於ASP.NET 1.1內核可以在倉庫 https://dotnet.myget.org/F/aspnetcore-dev/api/v3/index.json
THX烏拉圭回合的答案被找到,但這種解決方案只是爲ASPNETCORE.NET462工作。 並不適用於ASPNETCORE.NETCORE :( https://www.youtube.com/watch?v=wIsync6vTfQ – soroushdes
是的,這就是我在第一句話中所說的;-)但是如果你打算在跑步無論如何,在Windows硬件上,這可能是最簡單的解決方案。 – Thomas