WCF の 404.17 問題を解決するためにさまざまな試みを行いましたが、どれもうまくいきませんでした
開発環境 VS 2008 Team System、.NET Framework 3.5、OS Windows 7.0、IIS アプリケーション プール v2.0 クラシック。
C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation\ ServiceModelReg をインストールしました
Windows 機能の有効化を使用して、Windows 通信 HTTP アクティベーションを有効にしました。
IIS でのハンドラー マッピング
svc-ISAPI-2.0 *.svc 有効 指定なし IsapiModule 継承 svc-ISAPI-4.0_32bit *.svc 有効 指定なし IsapiModule 継承 svc-ISAPI-4.0_64bit *.svc 有効 指定なし IsapiModule 継承
アプリケーションはクラシック モードがないと機能しないため、AppPool を統合モードに変更できません。asmx Web サービスがあり、それらすべてにアクセスできます。問題を引き起こしているそのWCF。この 404.17 の問題を解決する方法を教えてください。
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="Solution1.WebApp.CallMonitorServiceBehavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
<behavior name="Solution1.WebApp.Service1Behavior">
<serviceMetadata httpGetEnabled="true" />
<serviceDebug includeExceptionDetailInFaults="false" />
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service behaviorConfiguration="Solution1.WebApp.CallMonitorServiceBehavior"
name="Solution1.WebApp.CallMonitorService">
<endpoint address="" binding="wsHttpBinding" contract="Solution1.WebApp.ICallMonitorService">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
<service behaviorConfiguration="Solution1.WebApp.Service1Behavior"
name="Solution1.WebApp.Service1">
<endpoint address="" binding="wsHttpBinding" contract="Solution1.WebApp.IService1">
<identity>
<dns value="localhost" />
</identity>
</endpoint>
<endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
</service>
</services>
</system.serviceModel>