web-dev-qa-db-ja.com

認識されない属性「targetframework」

可能性のある複製:
認識されない属性 'targetFramework'。属性名では大文字と小文字が区別されることに注意してください

まず、この質問がこのサイトで何度か質問されていることを承知していますが、これらすべてに対する答えは私の問題を解決しません。

IIS7で新しいマネージハンドラーを追加しようとすると、次の問題が発生します。

認識されない属性 'targetFramework'。属性名では大文字と小文字が区別されることに注意してください。

環境は、IIS7がインストールされたWindows Server Enterprise 2008 SP1です。

私のアプリケーションは.NET 4.0を使用しています。 .NETフレームワークはIISの後にインストールされました。

私は次のことを試しました/チェックしました:

  • 私のアプリプールは.NET 4.0を使用しています(.NET 4.0の1つのバージョンがインストールされていますが、ベータ版などはありません)
  • .NET 4.0が、「IIS 'aspnet_regiis.exe -iru'を使用して正しく登録されていることを確認します。
  • アプリプールをリサイクルし、マシンを再起動しました。
  • .NET 4.0を完全にアンインストールしてから、再インストールしました。
  • 「targetFramework」属性を削除しました-これは単に他の場所でクラッシュを引き起こします。

私には、IISは以前のバージョンの.NETをまだ参照しているように見えますが、IISは.NET 4.0 。

Webサイトは正常にロードされますが、この問題のためにカスタムイメージハンドラーをセットアップできません。

アドバイスをいただければ幸いです。

ありがとう。

[〜#〜] update [〜#〜]

これはクレイジーです。環境によってゼロから完全に再構築しました。

  • MSDNから「Hyper V SP1なしのWindows Server Enterprise」をダウンロードします。
  • .NET 4.0をインストールする
  • ASP.NET MVC 3をインストールする
  • 「Webサーバー」ロールを追加します-アプリプールが.NET 4.0を使用していることを確認します
  • プロジェクトをデプロイする

カスタムハンダーマッピングを追加しようとすると、同じエラーが発生します。私は何かを間違って/完全に愚かにしているか、このセットアップでIIS7に何らかの問題があります。 IISは、アプリケーションプールが.NET 4.0を使用するように設定されていても、.NET 4.0の 'targetFramework'属性を認識しません。

コマンド 'aspnet_regiis -lv'を使用すると、.NET 4のみがIISに登録されていることがわかります。

45
Jimmy Collins

IISでフレームワークを登録することは私にとってうまくいったことです:

C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319>aspnet_regiis -i
64
kenik

「既定のWebサイト」サイトノードの下にサイトをセットアップしていますか、またはIISで新しいサイトを作成しましたか?新しいサイトを作成した場合は、「既定のWebサイト」に移動し、そのアプリケーションプールを「DefaulAppPool」から「Asp.Net v4.0」に変更してみてください。 「デフォルトのWebサイト」はあなたのサイトとは何の関係もないはずですが、問題を解決するのに役立ついくつかの状況でそれを読みました。また、カスタムイメージハンドラーを機能させるには、.ashxファイル拡張子を使用して、構成不要のHTTPハンドラーを使用してみてください。これにより、IISに登録せずに、イメージハンドラーを(この問題を解決するまで)動作させることができます。

31
bbeny