「Microsoft.Owin」での FileLoadException
-
23-12-2019 - |
質問
そこで、Nuget を介して SignalR をインストールしました。 Microsoft.Owin
それからインストールされました。アプリケーションを実行するたびに、 FileLoadException
Startup.cs の app.MapSignalR();
ライン。「ファイルまたはアセンブリ 'Microsoft.Owin、Version=2.0.1.0、Culture=neutral、PublicKeyToken=31bf3856ad364e35'、またはその依存関係の 1 つを読み込むことができませんでした」と表示されます。見つかったアセンブリのマニフェスト定義は、アセンブリの参照と一致しません。」
きっと含まれていると思います Microsoft.Owin.dll
しかし、Nuget 経由で再インストールしようとすると、Microsoft.Owin.XML を再インストールできなかったと表示されます。
スタートアップ.cs
using Microsoft.Owin;
using Owin;
[assembly: OwinStartup(typeof(SignalRChat.Startup))]
namespace SignalRChat
{
public class Startup
{
public void Configuration(IAppBuilder app)
{
// Any connection or hub wire up and configuration should go here
app.MapSignalR();
}
}
}
解決
SignalR の最新バージョンは、2.0.1.0 ではなく Microsoft.Owin 2.0.2.0 に依存しています。次のチュートリアルを参照してください。Microsoft.Owin ではなく、Microsoft.AspNet.SignalR.SelfHost をパッケージ マネージャーに追加します。
他のヒント
場合によっては、パッケージが他のパッケージの特定のバージョンを参照することがあります。バインディングリダイレクトを追加してみることができます Microsoft.Owin
あなたの中で web.config
ファイル( <runtime>
セクション):
<dependentAssembly>
<assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" />
<bindingRedirect oldVersion="0.0.0.0-2.1.0.0" newVersion="2.1.0.0" />
</dependentAssembly>
これにより、以前のバージョンを参照するすべてがわかります。 2.1.0.0
使用する 2.1.0.0
その代わり。