型または名前空間名「Optimization」は名前空間「System.Web」に存在しません。質問する

型または名前空間名「Optimization」は名前空間「System.Web」に存在しません。質問する

新しい Web サイトをメイン サイトとして展開していますが、問題なく動作しています。

ルート URL の下にあるすべてのアプリケーションは、1 つを除いて同様に動作します。これは頻繁に使用されるレガシー システム (c#.net) であり、残念ながらソース コードにアクセスできません。

レガシーアプリケーションを実行すると詳しくはこちら次のエラーが発生します:

Server Error in '/crm' Application.

Compilation Error

Description: An error occurred during the compilation of a resource required to 
service this request. Please review the following specific error details and modify 
your source code appropriately. 

Compiler Error Message: CS0234: The type or namespace name 'Optimization' does not 
exist in the namespace 'System.Web' (are you missing an assembly reference?)

Source Error:


Line 17:     <pages>
Line 18:       <namespaces>
Line 19:         <add namespace="System.Web.Optimization" />
Line 20:       </namespaces>
Line 21:     <controls>

Source File: e:\WebSites\newsite\Web.config    Line: 19 


Show Detailed Compiler Output:

Show Complete Compilation Source:


Version Information: Microsoft .NET Framework Version:4.0.30319; ASP.NET Version:4.0.30319.18446

エラーはメイン サイトの web.config をリストしていますが、これは機能します。ただし、メイン サイトでアプリケーションを実行した場合にのみ発生します。

これは Server 2008 R2 と IIS7 で実行されています

これを修正するにはどうすればいいでしょうか? 他に試せることはありますか?

アップデート

違いがあるかどうかはわかりませんが、エラーで参照されている Web.Config は、レガシー アプリケーションのものではなく、新しい Web サイト用です。メイン サイトの構成が要因となる理由はまったくわかりません。

明確化

レガシー アプリケーションのソース コードにアクセスできないため、そのアプリケーションのプロパティを調整できません。サイトに最適化 dll を貼り付けても問題は解決しませんでした。他のユーザーにとっては機能するかもしれませんが、私には機能しません。

回避策

別の URL で新しいサイトを設定し、ルート URL へのトラフィックを新しい URL にリダイレクトして、レガシー アプリケーションを置き換えるまでそのまま実行できるようにします。非常にいい加減な解決策ですが、今のところはうまく機能しています。

ベストアンサー1

私は今この問題に直面しました:

エラー

最適化フレームワークを再インストールしたところ、すべて正常に動作しました。

Install-Package Microsoft.AspNet.Web.Optimization

おすすめ記事