1. ホーム
  2. asp.net-mvc

[解決済み] VS2010から公開するとallowDefinition='MachineToApplication'エラーが発生する(ただし、以前のビルド後のみ)

2022-11-24 06:49:35

質問

Asp.Net MVC 2 アプリケーションをローカルコンピュータで問題なく実行することができます。ちょうど実行/デバッグ。

しかし、すでにビルドしてしまった場合、それを公開することはできません! ソリューションをクリーンアップして、再度公開する必要があります。これはシステム クリティカルではないことは分かっていますが、本当に迷惑です。" One Click Publish" は " Clean solution and then One click publish" ではありません。

正確なエラーは次のとおりです。

エラー11 エラー11として登録された として登録されたセクションを使用するのはエラーです。 allowDefinition='MachineToApplication' として登録されたセクションをアプリケーションレベルを超えて使用することはエラーです。 をアプリケーションレベルを超えて使用することはエラーです。 このエラーは は、仮想ディレクトリがアプリケーションとして設定されていないことが原因で がアプリケーションとして構成されていない として構成されていない場合に発生します。

Views フォルダにある Web.Config と関係があると思われますが、それならなぜ以前一度ビルドした後だけなのでしょうか。また、アプリは一度公開すると問題なく動作します。

どのように解決するのですか?

私は MVC アプリで同じ問題を抱えていました。ビューをまだチェックしたいので、イライラしました。 MvcBuildViews

幸いなことに、私は ポスト を見つけ、それが私に答えを与えてくれました。 true としておくと、プロジェクトファイルの下に以下の行を追加することができます。

<BaseIntermediateOutputPath>[SomeKnownLocationIHaveAccessTo]</BaseIntermediateOutputPath>

そして、そのフォルダはプロジェクトのフォルダにはないようにします。私の場合はうまくいきました。完璧な解決策ではありませんが、今のところ良い方法です。必ず パッケージ フォルダーを削除してください。 objDebug および objRelease フォルダ)をプロジェクトフォルダから削除しないと、エラーが出続けます。

ご参考までに。 MS はこのエラーについて ...