29

1週間前にマシンを更新するまで、MVCプロジェクトは完全に機能していました。プロジェクトを実行しようとすると、バインディング エラーが表示されるようになりました

Managed Debugging Assistant 'BindingFailure' は、'C:\Program Files (x86)\IIS Express\iisexpress.exe' で問題を検出しました。

追加情報: 表示名 'Microsoft.VisualStudio.Web.PageInspector.Runtime' のアセンブリは、ID 2 の AppDomain の 'LoadFrom' バインディング コンテキストでの読み込みに失敗しました。ファイルまたはアセンブリ 'Microsoft.VisualStudio.Web.PageInspector.Runtime, Version=14.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' またはその依存関係の 1 つを読み込まないでください。システムは、指定されたファイルを見つけることができません。

エラーを過ぎても続行すると、プロジェクトは正しく読み込まれます。ただし、クラウド サービスでプロジェクトを Web ロールとして実行すると、ロールが予想よりも長くかかっているというメッセージがポップアップし続けるため、実行されません。

これは、スタンドアロン プロジェクトとして実行する場合のバインディングの問題に関係していると思います。

誰もこれに遭遇したことがありますか?


編集構成ファイルでアセンブリ参照を検索しましたが、何も表示されませんでした。最終的に、新しい azure SDK を再インストールしました。pageinspector のバインディング エラー メッセージは読み込み時に表示されますが、プロジェクトを続行すると問題なく動作します。現時点では、解決策が見つかるまで、この迷惑なメッセージと一緒に暮らす必要があります

4

4 に答える 4

8

例外オプションでThrown Exceptionsのチェックを外すと、プロンプトが表示されなくなります。通常の運用の一環だと思います。同じことに気付きました。

于 2014-10-03T19:30:08.877 に答える
7

フレームワーク ファイルを変更する代わりに、これを web.config ファイルに追加してみてください。

<system.web>
    <httpRuntime targetFramework="4.5" />
        <compilation debug="true" targetFramework="4.5" >
          <assemblies>
            <remove assembly="Microsoft.VisualStudio.Web.PageInspector.Loader, 
               Version=1.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
          </assemblies>
        </compilation>
    ...
</system.web>
于 2015-03-10T19:55:57.530 に答える
-2

ASP.NET によって生成されたアセンブリを開発者のコ​​ンピューターから運用環境に展開する際にも、同様の問題が発生しました (実行時にコンパイルされる .ascx および .aspx コントロール用に生成されたアセンブリを参照)。

再コンパイルを避けるために、ASP.NET 一時コンパイル フォルダー (つまり、"C:/Users/[USER]/AppData/Local/Temp/Temporary ASP.NET Files/") からそのようなランタイム生成アセンブリを (ハック的に) コピーして保持しています。パフォーマンスを向上させるために、サービスの起動時に。ただし、開発用コンピューターでコンパイルされたアセンブリを使用すると、VisualStudio アセンブリへの依存関係が導入されます。

運用環境でこれらのアセンブリを独自に生成できるようにすることで、この問題を修正しました。代わりに、これらの「運用」アセンブリをコピーして永続化すると、問題は完全に解消されます。

ASP.NET で生成されたアセンブリをこのように不適切に使用していないことを確認してください。おそらく問題は解決します。

于 2014-12-11T22:33:35.253 に答える