我有一个不响应方法调用的WCF 服务。在客户端,当我调用任何方法时都会超时。
有趣的是,当我在 Visual Studio 上更新参考时,它工作正常。它按预期响应元数据请求。
查看 Windows事件日志(在服务器上),我看到了消息App Pool exceeded time limits during shut down
。
并查看IIS 日志,我看到消息,应用程序池的名称在Connection_Abandoned_By_AppPool FooBar
哪里。FooBar
谁能告诉我为什么我的 WCF 服务没有响应客户端请求?
这是服务器上的web.config:
<?xml version="1.0"?>
<configuration>
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<system.web>
<compilation debug="true" targetFramework="4.0" />
</system.web>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior name="FooBarBehaviors">
<!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment -->
<serviceMetadata httpGetEnabled="true"/>
<!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
<bindings>
<basicHttpBinding>
<binding name="FooBarBinding">
<readerQuotas maxArrayLength="1048576" />
</binding>
</basicHttpBinding>
</bindings>
<services>
<service name="FooBarSvc.FooBar" behaviorConfiguration="FooBarBehaviors">
<endpoint contract="FooBarSvc.FooBar" binding="basicHttpBinding" bindingConfiguration="FooBarBinding" address="" />
</service>
</services>
</system.serviceModel>
</configuration>