ASP.NET 4.0 サイトの読み込み時に次のエラーが発生します。これは、web.config
ファイル内の WCF サービス設定が原因です (私は WCF の専門家として十分ではなく、Google は役に立ちません :)):
'[Path to my Service.svc]' のエンドポイントには、None MessageVersion のバインディングがありません。'System.ServiceModel.Description.WebScriptEnablingBehavior' は、WebHttpBinding または同様のバインディングでの使用のみを目的としています。
私は使用していwebHttpBinding
ましたが、次のエラーが発生していたので、この投稿のアドバイスに従って使用しています:basicHttpBinding
このサービスのセキュリティ設定には「匿名」認証が必要ですが、このサービスをホストする IIS アプリケーションでは有効になっていません。
とにかく、これが私のweb.configからの関連情報です。助けてください!
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="ABC.ProjectName.Web.ServiceBehavior">
<serviceDebug httpHelpPageEnabled="true" includeExceptionDetailInFaults="true" />
</behavior>
</serviceBehaviors>
<endpointBehaviors>
<behavior name="ABC.ProjectNameDell.Web.ServiceBehavior">
<enableWebScript />
</behavior>
</endpointBehaviors>
</behaviors>
<serviceHostingEnvironment multipleSiteBindingsEnabled="true"
aspNetCompatibilityEnabled="true" />
<bindings>
<basicHttpBinding>
<binding name="webHttpBinding_AnonymousDisabled" >
<security mode="TransportCredentialOnly">
<transport clientCredentialType="Windows" />
</security>
</binding>
</basicHttpBinding>
</bindings>
<services>
<service name="ABC.ProjectName.Web.AjaxService" >
<endpoint address="/"
behaviorConfiguration="ABC.ProjectName.Web.ServiceBehavior"
binding="basicHttpBinding"
contract="ABC.ProjectName.Web.AjaxService" />
</service>
</services>
</system.serviceModel>