.NET 3.5でSignalRを使用する方法
質問
Siganlrを使用してWinform Businessソリューションを構築したいのですが、クライアントマシンに.NET 4.0をインストールすることはできません。 SignalRには.NET 4.0のミニナム要件があるようです。 Winformと.NET 3.5からSignalRを使用する最良の方法は何ですか。クライアントアプリケーションに送信/受信メッセージ関数を含めたいと思います。
サーバー側に.NET 4.0を使用して、イントラネットでIISでSignrrをホストします。
と同様のように、作成してAPI(.NET 3.5で)を作成することは可能でしょうか Pubnub C#?誰かが私を正しい方向に向けることができますか。
解決
自分のものをコンパイルするのが怖くない場合は、SignalR用の.NET 2.0互換クライアントライブラリを作成しました。それは私のフォークからすぐに利用可能です(https://github.com/robink-teleopti/signalr)signalr。
現時点では、元のプロジェクトにその負担を追加したくないので、プルリクエストを行うつもりはありません。
フォークにもう1つの変更があります。クライアントが20を超えるグループに属している場合、私はGETの代わりにPostの使用に自動的に切り替え、サーバー側でマイナーな変更を加えてその部分を処理しました。
他のヒント
V1.xおよびV2.x SignalrクライアントをNet35にバックポートしました。ここでNugetパッケージとして利用可能: http://www.nuget.org/packages/nivot.signalr.client.net35/
SignalRプロジェクトの著者の1人には、.NET 4に出荷されるTaskParallellibrary(TPL)を使用するという目標がありました。そのため、そのプロジェクトのC#コードのいずれかが.NET 3.5で実行されるとは思いません。サーバーでTCPまたは名前付きパイプWCFエンドポイントをホストし、通常の.NETクライアントコールバックを使用してみませんか?サーバーがWindows Server 2008を使用している場合、またはAppFabricである場合、これは比較的簡単です。
古いサーバーの場合、ホストできます Webbrowserコントロール Signalr JavaScriptクライアントライブラリを使用して、シグナリングを処理します。
さらに6か月で、ネイティブ.NET 3.5クライアントライブラリに賭けましたが、メンテナーはフルタイムのMS従業員であるため、すぐにレガシーバージョンをサポートする時間があるとは思いません。