Webアプリケーションで次のようなエラーが表示されることがあります。私たちはWindows Server 2008 R2、IIS 7.5、MVC3、.NET 4.5を実行しています。定期的にASP.NETエラーが表示されるCS0656:コンパイラに必要なメンバがありません
それは同じエラーが毎回です:CS0656:このエラーが発生した場合、それはから何かを取ることができ
コンパイラに必要なメンバー「Microsoft.CSharp.RuntimeBinder.Binder.BinaryOperation」を欠落アプリケーションプールの再起動、アプリケーション自体の再インストール、修正を行います。
このエラーは、以前にソフトウェアがインストールされていたマシンと同様、まったく新しいVMイメージ(以前のソフトウェアのインストールなし)で発生します。このエラーは、アプリケーションの最初の実行時に発生する可能性があります。または、アプリケーションがIISアプリケーションプールがワーカープロセスをリサイクルするのに十分な長さになっていると考えられます。
私はこのエラーについて数多くの研究をしており、運がない複数のソリューションを試したので、これは対処するのが非常に困難になってきています。また、エラーが発生するランダムな頻度により、トラブルシューティングが非常に困難になっています。この問題の洞察、または可能な解決策に関するアイデアは非常に高く評価されます。私はこの時点で何かを試してみたいと思っています。あなたの.NET Frameworkがあるバージョンは何
1)テスト用のVMの1つをデバッガに接続してクラッシュさせることはできますか? 2)DLRを使用していますか? BCLソースとドキュメントを見ると、タイプ名は動的操作に関連付けられているようです。それとも、MVCのDLRの使用ですか? –
どのバージョンのMicrosoft.CSharp.dllが使用されているかを調べることができます(procexpなどのツールでパスを特定する)、.NET Reflectorなどのツールを使用して開き、BinaryOperation静的メソッドがあることを確認できますか?コンパイラがMicrosoft.CSharp.dllのより新しいバージョンを期待しています) –
C#の動的言語機能を使用していますか?とにかくCLRが壊れているように見えます。 –