ASP.NETMVCとSignalrの両方を初めて使用します。このチュートリアルに従って、 Signalrを介したASP>NETとのSQLの相互作用を学習します。
私は以下の手順を試しました
- 新しいプロジェクト「ASP.NETMVC3」を作成しました
- かみそりビューエンジンを備えた選択されたインターネットアプリケーション。
- nuget経由でインストールされたMicrosoftASP.NETSignalr
- 同じデータベースと同じテーブルを作成しました。
- connectionstringを追加して、webconfigを変更しました。
- Listnerを有効および停止するためにGlobal.asaxに変更を適用しました。
- リンクのステップ5と同様に、クラス「JobInfo」を追加しました。
- チュートリアルのステップ7で、[プロジェクト]> [新しいアイテムの追加]をクリックすると、Signalrハブクラスが見つかりませんでした。そこで、同じ名前の通常のクラスを追加しました
コード
namespace MvcApplication1
{
public class JobHub
{
public static void Show()
{
IHubContext context = GlobalHost.ConnectionManager.GetHubContext<JobHub>();
context.Clients.All.displayStatus();
}
}
}
今、私がソリューションを構築しているとき、私はこのエラーを受け取ります
The type 'MvcApplication1.JobHub' cannot be used as type parameter 'T' in the generic type or method 'Microsoft.AspNet.SignalR.Infrastructure.IConnectionManager.GetHubContext<T>()'.
There is no implicit reference conversion from 'MvcApplication1.JobHub' to 'Microsoft.AspNet.SignalR.Hubs.IHub'.
また、コントローラーをクリックして「valueController」を追加すると、「ApiController」から継承できないため、手順8の実装方法がわかりません。
以下は私のアプリケーションのスクリーンショットです。
どうすればこれを修正できますか?