c# - source - SignalR 2.0エラー:ファイルまたはアセンブリを読み込めませんでした。Microsoft.Owin.Security




signalr.net core github (6)

私はこのチュートリアルをステップバイステップで実行しています

http://www.asp.net/signalr/overview/signalr-20/getting-started-with-signalr-20/tutorial-signalr-20-self-host

そして、私は以下の行に例外が表示されています

        string url = "http://localhost:8080";
        using (WebApp.Start(url)) //<------ error on this line
        {
            Console.WriteLine("Server running on {0}", url);
            Console.ReadLine();
        }

エラーメッセージ:

ファイルまたはアセンブリ 'Microsoft.Owin.Security、Version = 2.0.1.0、Culture = neutral、PublicKeyToken = 31bf3856ad364e35'またはその依存関係の1つを読み込めませんでした。 見つかったアセンブリのマニフェスト定義がアセンブリ参照と一致しません。 (HRESULTからの例外:0x80131040)

詳細情報:

私のプロジェクトのソリューションでは、参照はNuGetのpackagesフォルダのdllを指しています

これはNuGetによってApp.configファイルに追加されました

<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
  <dependentAssembly>
    <assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-2.1.0.0" newVersion="2.1.0.0" />
  </dependentAssembly>
  <dependentAssembly>
    <assemblyIdentity name="Microsoft.Owin.Security" publicKeyToken="31bf3856ad364e35" culture="neutral" />
    <bindingRedirect oldVersion="0.0.0.0-2.0.0.0" newVersion="2.0.0.0" />
  </dependentAssembly>
</assemblyBinding>

パッケージフォルダ、 packages\Microsoft.Owin.Security.2.0.0\lib\net45 、Microsoft.Owin.Security.dllのファイルバージョンは2.020911.395です。


Web.config構成タグを変更して修正しました。

これから:

<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">

これに:

<configuration>

なぜこの作品が分かりません。


app.configの名前をweb.configに変更すると、私の仕事になります。 または、単にapp.configのコピーを作成し、それをweb.config


このアセンブリは、要求されたものと一致しないため、このエラーが発生します。 GACのMicrosoft.Owin.Securityバージョンを確認してください。 hereもご覧here


シンプル、あなたのweb.configファイルに移動します。 Microsoft.Owin、Microsoft.Owin.Security.OAuth、Microsoft.Owin.Security.Cookies、Microsoft.Owin.SecurityのbindingRedirectタグを次のように変更します。

<bindingRedirect oldVersion="1.0.0.0-2.0.0.0" newVersion="2.0.1.0" />

これはうまくいくかもしれない。


私の場合、それはIISの明白な問題であることが判明しました。 ローカルIISにデバッグを変更すると、エラーはなくなりました。


私の場合は、「データベースの更新」中に最初にこのエラーが発生します。 私はmigration.itの助けを借りてプロジェクトに「プロジェクトをスタートアップとして設定する」と書いた





signalr