VS2015 Update 2 / IIS EXPRESS / WCF / Windows 10 / Localhost - 请求永远不会收到回复

时间:2016-04-17 21:20:12

标签: wcf http iis express visual-studio-2015

我在Windows 10上运行,使用VS2015 Enterprise和IIS Express 10.我有一组现有的WCF服务,可以在开发笔记本电脑上使用这些部分运行。我在开发工作站上安装了这些相同的组件,但它们不起作用。所有代码都从TFS 2015中提取,因此代码和解决方案的IIS Express配置文件在两台计算机上都是相同的。我还比较了My Documents下的IIS Express配置,它们在两台机器上都是相同的。对于WCF服务绑定,web.config设置为HTTP而不是TCP / IP。

当我使用Internet Explorer或WCF测试客户端启动WCF服务时,会发送响应但未收到任何回复。我用Fiddler确认请求已发送,但没有回复。浏览器超时需要一个多小时。我使用了netsh,两台机器上显示的条目是相同的,除了在工作站上ESTABLISHED状态在浏览器等待响应时保持不变。

我完全不知道问题出在哪里。我在工作站上注意到的唯一行为是“导航已取消”在“等待本地主机...”出现之前短暂闪烁。

欢迎提出任何建议

来自其中一个WCF项目文件的Spinet

  <PropertyGroup>
    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
    <ProductVersion>
    </ProductVersion>
    <SchemaVersion>2.0</SchemaVersion>
    <ProjectGuid>{49AD9EC1-BCCD-439B-BF2D-3DD23FA515AE}</ProjectGuid>
    <ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
    <OutputType>Library</OutputType>
    <AppDesignerFolder>Properties</AppDesignerFolder>
    <RootNamespace>PCXWcfPartyService</RootNamespace>
    <AssemblyName>PCXWcfPartyService</AssemblyName>
    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
    <WcfConfigValidationEnabled>True</WcfConfigValidationEnabled>
    <UseIISExpress>true</UseIISExpress>
    <IISExpressSSLPort />
    <IISExpressAnonymousAuthentication />
    <IISExpressWindowsAuthentication />
    <IISExpressUseClassicPipelineMode />
    <SccProjectName>SAK</SccProjectName>
    <SccLocalPath>SAK</SccLocalPath>
    <SccAuxPath>SAK</SccAuxPath>
    <SccProvider>SAK</SccProvider>
    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\</SolutionDir>
    <UseGlobalApplicationHostFile />
  </PropertyGroup>

Snipt来自.vs IIS Express applicationhost.config:

    <site name="PCXWcfPartyService" id="13">
        <application path="/" applicationPool="Clr4IntegratedAppPool">
            <virtualDirectory path="/" physicalPath="D:\Development\PCXMain\PCXWcfServices\PCXWcfPartyService" />
        </application>
        <bindings>
            <binding protocol="http" bindingInformation="*:54024:localhost" />
        </bindings>
    </site>

来自web.config的Snipet:

<system.serviceModel>
    <bindings>
        <customBinding>
            <binding name="DefaultBinding" sendTimeout="00:02:00" closeTimeout="00:02:00" openTimeout="00:02:00">
                <binaryMessageEncoding/>
                <httpTransport transferMode="Buffered"/>
            </binding>
            <binding name="PCXCommonBinding" sendTimeout="00:02:00" closeTimeout="00:02:00" openTimeout="00:02:00">
                <binaryMessageEncoding/>
                <httpTransport maxReceivedMessageSize="2147483647" maxBufferSize="2147483647"/>
            </binding>
            <binding name="PCXCommonTCPBinding" sendTimeout="00:02:00" closeTimeout="00:02:00" openTimeout="00:02:00">
                <binaryMessageEncoding/>
                <tcpTransport transferMode="Buffered" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647">
                    <connectionPoolSettings leaseTimeout="00:05:00"/>
                </tcpTransport>
            </binding>
            <binding name="PCXCommonNPBinding">
                <binaryMessageEncoding/>
                <namedPipeTransport transferMode="Buffered" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647"/>
            </binding>
            <binding name="PCXApplicationServiceBinding" receiveTimeout="00:1:00" sendTimeout="00:1:00">
                <binaryMessageEncoding>
                    <readerQuotas maxDepth="32" maxStringContentLength="10485760" maxArrayLength="10485760" maxBytesPerRead="4096" maxNameTableCharCount="10485760"/>
                </binaryMessageEncoding>
                <httpTransport maxReceivedMessageSize="2147483647" maxBufferSize="2147483647" maxBufferPoolSize="2147483647"/>
            </binding>
            <binding name="PCXApplicationServiceTCPBinding" sendTimeout="00:02:00" closeTimeout="00:02:00" openTimeout="00:02:00">
                <binaryMessageEncoding>
                    <readerQuotas maxDepth="32" maxStringContentLength="10485760" maxArrayLength="10485760" maxBytesPerRead="4096" maxNameTableCharCount="10485760"/>
                </binaryMessageEncoding>
                <tcpTransport transferMode="Buffered" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647">
                    <connectionPoolSettings leaseTimeout="00:05:00"/>
                </tcpTransport>
            </binding>
        </customBinding>
    </bindings>
    <services>
        <service behaviorConfiguration="DefaultBehavior" name="PCXWcfPartyService.PCXPartyService">
            <endpoint address="" binding="customBinding" bindingConfiguration="PCXCommonBinding" contract="PCXServiceInterfaces.IPCXPartyService"/>
            <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
        </service>
        <service behaviorConfiguration="DefaultBehavior" name="PCXWcfPartyService.PCXPartyServiceDMZ">
            <endpoint address="" binding="customBinding" bindingConfiguration="PCXCommonBinding" contract="PCXServiceInterfaces.IPCXPartyServiceDMZ"/>
            <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
        </service>
        <service behaviorConfiguration="DefaultBehavior" name="PCXWcfPartyService.PCXPartyServiceAsync">
            <endpoint address="" binding="customBinding" bindingConfiguration="PCXCommonBinding" contract="PCXServiceInterfaces.IPCXPartyServiceAsync"/>
            <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
        </service>
        <service behaviorConfiguration="DefaultBehavior" name="PCXWcfPartyService.PCXPartyServiceDMZAsync">
            <endpoint address="" binding="customBinding" bindingConfiguration="PCXCommonBinding" contract="PCXServiceInterfaces.IPCXPartyServiceDMZAsync"/>
            <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange"/>
        </service>
    </services>
    <behaviors>
        <serviceBehaviors>
            <behavior name="DefaultBehavior">
                <serviceMetadata httpGetEnabled="true"/>
                <serviceDebug includeExceptionDetailInFaults="true"/>
                <dataContractSerializer maxItemsInObjectGraph="2147483647"/>
            </behavior>
            <behavior name="">
                <serviceMetadata httpGetEnabled="true"/>
                <serviceDebug includeExceptionDetailInFaults="false"/>
            </behavior>
        </serviceBehaviors>
        <endpointBehaviors>
            <behavior name="DefaultClientBehavior">
                <dataContractSerializer maxItemsInObjectGraph="2147483647"/>
            </behavior>
        </endpointBehaviors>
    </behaviors>

0 个答案:

没有答案