web-dev-qa-db-ja.com

SignalRは.Net Coreでは使用できません

NuGetパッケージマネージャーを使用してSignalRをインストールしようとしていますC#Asp.Netコアプロジェクトですが、SignalRが.netコアと互換性がないというエラーが表示されます。本当にサポーターではないのですか?またはそれを動作させるために何かをすることができますか? (それを言及することが重要である場合、私はVS2017を使用しています)。エラー:

Restoring packages for D:\Test\Test.WebAPI\Test.WebAPI.csproj...
Package Microsoft.AspNet.SignalR.Core 2.2.1 is not compatible with netcoreapp1.1 (.NETCoreApp,Version=v1.1). Package Microsoft.AspNet.SignalR.Core 2.2.1 supports: net45 (.NETFramework,Version=v4.5)
Package Owin 1.0.0 is not compatible with netcoreapp1.1 (.NETCoreApp,Version=v1.1). Package Owin 1.0.0 supports: net40 (.NETFramework,Version=v4.0)
Package Microsoft.Owin 2.1.0 is not compatible with netcoreapp1.1 (.NETCoreApp,Version=v1.1). Package Microsoft.Owin 2.1.0 supports:
  - net40 (.NETFramework,Version=v4.0)
  - net45 (.NETFramework,Version=v4.5)
Package Microsoft.Owin.Security 2.1.0 is not compatible with netcoreapp1.1 (.NETCoreApp,Version=v1.1). Package Microsoft.Owin.Security 2.1.0 supports: net45 (.NETFramework,Version=v4.5)
One or more packages are incompatible with .NETCoreApp,Version=v1.1.
Package restore failed. Rolling back package changes for 'Test.WebAPI'.

更新:

SignalR for ASP.NetCoreは現在(2018年1月1日)NuGetでアルファ版として利用できます。

https://www.nuget.org/packages/Microsoft.AspNetCore.SignalR/

UDPATE 01.06.2018:

SignalRがASP.Net Core 2.1で利用可能になりました

9

SignalR 2は、.NET Core用ではなく、.NET Framework用に構築されています。彼らはまだSignalR for .NET Coreに取り組んでいます。

ASP.NET Coreロードマップの 古いリビジョン は、SignalRをASP.NET Core 1.2の一部として示しています。 最新リビジョン は、SignalR(またはフレームワーク)を参照していませんが、1.2が2017年第2四半期に予定されていることについて言及しています。

Microsoftの連中がASP.NET CoreでSignalRについて議論している ビデオ があります。 1時間もあるので、見ないでおく。しかし、おそらくいくつかの有用な情報がそこにあります。

11
mason

SignalR for asp.netコア

EDIT:SignalR for asp.net core is release with .net standard 2.1。

このパッケージは.net標準2.0を対象としており、まだアルファ版です。

。net標準2.1より前の安定版リリースはリリースされていないようです

enter image description here

パッケージは myget にあります。

シグナルハブの負荷を分散する場合、redisをバックペインとして使用できます。


asp.netのSignalR

そして、すでに安定したリリースを持っている.netフレームワーク用のSignalRパッケージもあります。 nuget にあります。

負荷分散 の場合、次のバックペインタイプがサポートされます。

  • Azureサービスバス
  • Redis
  • SQLサーバー

SignalR.Server for asp.net core(更新18.09.2017:利用できなくなりました)

このパッケージは使用しないでください!

これは、.net 4.5.1および.net standard 1.6を対象とする非推奨のパッケージです。安定したパッケージはなく、今後もリリースされます。

プレビューパッケージは myget にあります。

シグナルハブを負荷分散する場合、SQLサーバーをバックペインとして使用できます。 (しかし 実装は壊れています

4
NtFreX

私は現在、.netコア/ angular 4プロジェクトでシグナルを使用しています。

グーグルにはいくつかのシードの例がありますが、ほとんどの人がnugetを介してシグナルをダウンロードしようとする可能性があるのは、それが別のパッケージリポジトリであるという事実です。エッジリポジトリ:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <packageSources>
    <add key="AspNetCore" value="https://dotnet.myget.org/F/aspnetcore-ci-dev/api/v3/index.json" />
    <add key="NuGet" value="https://api.nuget.org/v3/index.json" />
  </packageSources>
</configuration>
4
user2819502

それは正しいです。 SignalRはOWIN上に構築されています。OWINは、フレームワーク全体をターゲットにする場合、asp.netコアと互換性がありますが、dotnetコアは互換性がありません。

2
Tim

最近、SignalRを使用するMVC5アプリケーションをASP.NET Core 1.1netcoreapp1.1)。非公式のパッケージ(Gray.Microsoft.AspNetCore.SignalR.Server)これは、既存のコードを変更することなく、ほとんど問題なく動作しました。

csprojファイル

<PackageReference Include="Microsoft.AspNetCore.WebSockets" Version="1.0.2" />
<PackageReference Include="Gray.Microsoft.AspNetCore.SignalR.Server" Version="0.2.0-alpha1" />

スタートアップ-ConfigureServicesメソッド

services.AddSignalR();

スタートアップ-メソッドの構成

app.UseWebSockets();
app.UseSignalR();
1
undefined

SignalRは.NET Coreで導入されています。ここに実装のリンクがあります https://www.youtube.com/watch?v=1TrttIkbs6c

0
vijay sahu

次のパッケージはNuGetにあります。

Microsoft.AspNetCore.SignalR 1.0.0-alpha1-final Webを介したリアルタイムの双方向通信を提供するコンポーネント。

Microsoft.AspNetCore.SignalR.Redis 1.0.0-alpha1-final Redis for ASP.NET Core SignalR。

パッケージで.NETSTandard、Version = v2.0がサポートされるようになりました。プロジェクトでパッケージを使用しました。 Angular 4 + SignalR

0
Steven Song