0

webHttpRelayBinding と Azure Service Bus を介して "ローカル" とクラウドの両方で公開される WCF REST サービスがあります。

これは私の IIS 7.5 Express インスタンスでは問題なく機能しますが、Windows Server 2003 / IIS 6 環境に展開すると、次のエラーが発生し始めます。

ASP.NET 互換性をサポートしていないため、サービスをアクティブ化できません。このアプリケーションでは、ASP.NET 互換性が有効になっています。web.config で ASP.NET 互換モードをオフにするか、AspNetCompatibilityRequirements 属性をサービス タイプに追加して、RequirementsMode 設定を 'Allowed' または 'Required' に設定します。

この問題を解決するには、ASP.NET への依存関係を完全に削除する必要があることを読みました (こちらを参照)。サービス定義を含むアセンブリが System.Web を参照しないようにコードをリファクタリングしましたが、それでもエラーが発生します。

したがって、これが意味することは、IIS でサービスをまったくホストできないということだと思います。その場合、Windows サービスでホスティングを行う唯一のオプションはありますか? WAS は Win2k3 では利用できません。

4

1 に答える 1

0

web.configのserviceHostingEnvironment要素からaspNetCompatibilityEnabled属性を削除しようとしましたか?

それ自体はWin2k3で利用可能でした(これがWebホストWCFサービスの動作方法です)が、IISのアプリケーションプールとアクティベーションモデルは、新しいバージョンとは少し異なります。

于 2012-11-07T01:16:05.300 に答える