none
WCFサービスを構築しIIS7.5でホストさせたときのエラー RRS feed

  • 質問

  • お世話になっております。

    VS2008でWCFサービスを構築し、Windows7のIIS7.5でサービスをホストさせるよう構築しているのですが、
    疑問があります。

    マシンには、.netframeworkがv2.0.50727、v3.0、v3.5、v4がインストールされており、
    プロジェクトは、.netframework3.5で開発しました。

    IISに配置後、アプリケーションプールが使用する.netframeworkのバージョンを選択するとき、v2.0.50727、v4しかリストにありませんでした。

    とりあえず、いずれかを選択して、参照してみました。
    v2.0.50727で、サービスに参照すると拡張子scvが認識せずにエラー、v4ではweb.configに問題がエラーが発生します。

    v2.0.50727のエラー
    要求されたコンテンツはスクリプトであり、静的ファイル ハンドラーで処理されない可能性があります。

    v4のエラー
    定義済みの 'system.web.extensions/scripting/webServices/roleService' セクションが重複しています

    v4では、web.configに記述されているエラーのセクションをコメントアウトしていくことで、エラーが出なくなりました。

     

    疑問1.アプリケーションプールが使用する.netframeworkバージョンに、v3.0,v3.5はリストにないのですが、なぜでしょうか。

    疑問2.web.configのセクションですが、v4のMachine.configファイルをみてみると、
    各要素の変更許可の値は、allowDefinition="MachineToApplication or allowDefinition="Everywhere" なのに
    アプリケーションのweb.configで記述しているとエラーになるのか

    疑問3.(疑問2の続きで、エラーがでる要素を、VS2008はweb.configに記述するのか

    ご教授ください。

     

     

    2011年9月1日 8:43

回答

  • 疑問1のみの回答です。

    .NET Framework 3.0. 3.5は、.NET Framework 2.0 にクラスを追加したものであり、2.0のクラスは、3.0, 3.5でも同一です。そのためASP.NETでは3.0, 3,5の選択肢がないのだろうと推測します。

    とことん理解する .NET Framework 3.5(1/4):CodeZine より引用:

    "図1に示すように.NET 2.0の共通言語ランタイム(CLR)やベースクラスライブラリ(BCL)などのテクノロジーは.NET 3.5でも同じように利用できます。"

     


    Blog:プログラマーな日々 http://d.hatena.ne.jp/JHashimoto/
    • 編集済み jhashimoto 2011年9月1日 10:02 引用を追記
    • 回答としてマーク Brillia 2011年9月8日 4:54
    2011年9月1日 9:56
  • ご返事ありがとうございます。

    解決できました。

    どうも、IIS7.5と.Netframework3.5のインストール順番によって
    私のような現象が起こるみたいです。

    で、私が解決した方法ですがですが、

    ServiceModelReg.exe –i
    ServiceModelReg.exe –vi

    で解決できました。

     

    • 回答としてマーク Brillia 2011年9月8日 4:54
    2011年9月8日 4:54

すべての返信

  • 疑問1のみの回答です。

    .NET Framework 3.0. 3.5は、.NET Framework 2.0 にクラスを追加したものであり、2.0のクラスは、3.0, 3.5でも同一です。そのためASP.NETでは3.0, 3,5の選択肢がないのだろうと推測します。

    とことん理解する .NET Framework 3.5(1/4):CodeZine より引用:

    "図1に示すように.NET 2.0の共通言語ランタイム(CLR)やベースクラスライブラリ(BCL)などのテクノロジーは.NET 3.5でも同じように利用できます。"

     


    Blog:プログラマーな日々 http://d.hatena.ne.jp/JHashimoto/
    • 編集済み jhashimoto 2011年9月1日 10:02 引用を追記
    • 回答としてマーク Brillia 2011年9月8日 4:54
    2011年9月1日 9:56
  • こんにちは、Brillia さん。

    MSDN フォーラムのご利用ありがとうございます。オペレーターの山本です。

    疑問への回答ではないのですが、米国本社のほうで似たようなスレッドがありましたので、ご参考まで。

      IIS 7.5 - HTTP Error 404.17 - Not Found - Static File Handler.
      http://social.msdn.microsoft.com/Forums/ar/wcf/thread/009edb40-1104-4c01-8585-964980f31fa6
                                                                                                                                                 
    日本マイクロソフト株式会社 フォーラム オペレーター 山本 春海

    2011年9月8日 2:34
  • ご返事ありがとうございます。

    解決できました。

    どうも、IIS7.5と.Netframework3.5のインストール順番によって
    私のような現象が起こるみたいです。

    で、私が解決した方法ですがですが、

    ServiceModelReg.exe –i
    ServiceModelReg.exe –vi

    で解決できました。

     

    • 回答としてマーク Brillia 2011年9月8日 4:54
    2011年9月8日 4:54