私はSignalRとOwinを使用したWebアプリケーションを持っています。他の人のほかに、私はNuGetパッケージを使用しています:Microsoft.AspNet.SignalR.CoreとMicrosoft.AspNet.SignalR.Owinで定義が重複しています
- Microsoft.AspNet.SignalR.Core:2.2.0
- Microsoft.AspNet.SignalR.Owin:1.2.2
- Microsoft.Owin:3.0。 1
- Owin:1.0
私はOwinHost.exeを使用してOwinアプリケーションを起動すると、私はいつも最初の要求
後、次のoututを参照してください手動Microsoft.AspNet.SignalR.WebSockets.DefaultWebSocketHandler
をインスタンス化する
System.TypeLoadException: Could not load type 'Microsoft.AspNet.SignalR.Hosting.IWebSocketRequest' from assembly 'Microsoft.AspNet.SignalR.Core, Version=2.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. System.TypeLoadException: Type 'Microsoft.AspNet.SignalR.WebSockets.DefaultWebSocketHandler' from assembly 'Microsoft.AspNet.SignalR.Owin, Version=1.2.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' is attempting to implement an inaccessible interface.
次のステップだった:
try
{
Assembly a = Assembly.Load("Microsoft.AspNet.SignalR.Owin");
var types = a.GetTypes();
}
catch (ReflectionTypeLoadException e)
{
foreach (var e2 in e.LoaderExceptions)
Console.WriteLine(e2);
}
これは、追加の出力を生成:前述LoaderExceptionsプロパティを見るために210
は、私は自分のスタートアップコードに追加しました
var handler = new Microsoft.AspNet.SignalR.WebSockets.DefaultWebSocketHandler();
残念ながら、これによりコンパイルエラーが発生しました:
The type 'DefaultWebSocketHandler' exists in both 'Microsoft.AspNet.SignalR.Core, Version=2.2.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' and 'Microsoft.AspNet.SignalR.Owin, Version=1.2.2.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'
オブジェクトブラウザでは、これが正しいことがわかります。しかし、私はエラーを取り除く方法を知りません。