この質問はかなり聞かれているようですが、実際に問題を解決するものはありません。領域を持つ ASP.NET MVC4 アプリケーションがあります。この領域内には、オーバーライドされた appsettings を含む web.config があります。これらの設定は、エリア内のコントローラーで読み取ろうとしたときに取得されないようです。
-MyApp
-Areas
-MyArea
-Controllers
-MyController
-Web.config
-Web.config
私MyApp\Web.config
が持っている:
<appSettings>
<add key="DefaultDisplayMode" value="Configuration" />
</appSettings>
私MyApp\Areas\MyArea\Web.config
が持っている:
<appSettings>
<add key="DefaultDisplayMode" value="Review" />
<add key="SubSetting" value="Testing" />
</appSettings>
MyController
アプリの設定を照会すると、次のように表示されます。
DefaultDisplayMode: Configuration
私は見ることを期待しています:
DefaultDisplayMode: Review
SubSetting: Testing
私は両方で試しました:
System.Configuration.ConfigurationManager.AppSettings["..."]
System.Web.Configuration.WebConfigurationManager.AppSettings["..."]
私は運がない次の(オーバーザトップ)構造で試しました:
-MyApp
-Areas
-MyArea
-Controllers
-MyController
-Web.config
-Web.config
-Web.config
サブディレクトリの appSettings が機能しない理由を誰か知っていますか?