私は他の答えを試しました。また、WebGreaseパッケージとAntlrパッケージの復元、アップグレード、ダウングレード、再インストールの多くの組み合わせを試しました。実行時に、置き換えられた古いAntlrのバージョン番号(3.4.1.9004)を表示するLoaderExceptionsでReflectionTypeLoadExceptionがスローされていました。
また、次のことも試しましたが、テストに数日かかりましたが、いずれも問題を解決しませんでした。
- 一時ファイルをクリアします。
- VisualStudioとソリューションの再読み込み。
- 開発用コンピューターを再起動します。
- 参照の「特定のバージョン」フラグを削除します。
最終的に機能したのは、web.configファイルにバインディングリダイレクトを追加することでした。古いバージョンのWebGreaseもNuGetによって更新されていないため、両方を次のように置き換えました。
</runtime>
</assemblyBinding>
<dependentAssembly>
<assemblyIdentity name="WebGrease" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-1.6.5135.21930" newVersion="1.6.5135.21930" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Antlr3.Runtime" publicKeyToken="eb42632606e9261f" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-3.5.0.2" newVersion="3.5.0.2" />
</dependentAssembly>
</assemblyBinding>
</runtime>
私のアプリケーションを再コンパイルしてデプロイした後、それは苦情を取り除きました。