0

我有一个 silverlight 5 应用程序,在我的 web 项目中有一个(非 RIA)WCF 服务。当然,它在我的机器上运行良好;-) - Windows 7,但是当我将它部署到我的开发服务器(带有 .NET 4 的 WinServer2008,使用 IIS 6)时,应用程序似乎没有完成加载 - 我得到了初始 silverlight 正在加载...然后我只有一个空白屏幕。我没有看到任何错误消息。

我认为问题可能是silveright应用程序假定WCF服务的端口与我机器上的端口相同(46133)。

我看过网上的文章说应该将ServiceReferences.ClientConfig中的endpoint地址设置为../Service.svc。如果我将其更改为此并进行部署,则没有任何变化。

在 web 项目的属性中,在 web 选项卡上,我选中了 Use Visual Studio Development Server,特定端口 46133,Virtual Path =/

我认为已部署的站点仍在尝试使用端口 46133,因为 Fiddler 显示 clientaccesspolicy.xml 文件的 502 红色项目,并带有消息

[Fiddler] 到 localhost 的套接字连接失败。
错误代码:10061
。无法建立连接,因为目标机器主动拒绝它 127.0.0.1:46133

有什么建议么?

这是 ServiceReferences.ClientConfig 文件:

<configuration>
    <system.serviceModel>
        <bindings>
            <basicHttpBinding>
                <binding name="BasicHttpBinding_IService" maxBufferSize="2147483647"
                    maxReceivedMessageSize="2147483647">
                    <security mode="TransportCredentialOnly" />
                </binding>
            </basicHttpBinding>
        </bindings>
        <client>
            <endpoint address="../Service.svc" binding="basicHttpBinding"
                bindingConfiguration="BasicHttpBinding_IService" contract="ServiceReference1.IService"
                name="BasicHttpBinding_IService" />
        </client>
    </system.serviceModel>
</configuration>

我的 web.config 是

 <system.web>
    <httpRuntime executionTimeout="180" />
    <compilation debug="true" targetFramework="4.0" />
    <customErrors mode="Off"/>
  </system.web>

  <system.serviceModel>
    <bindings>
      <basicHttpBinding>
        <binding name="BasicHttpStreamingBinding" maxBufferSize="2147483647"
          maxReceivedMessageSize="2147483647" transferMode="Streamed" receiveTimeout="01:00:00" sendTimeout="01:00:00">
          <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647"
            maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" />
          <security mode="TransportCredentialOnly">
            <transport clientCredentialType="Ntlm" />
            <!--<transport clientCredentialType="Windows" />-->
          </security>
        </binding>
      </basicHttpBinding>
    </bindings>

    <client />

    <behaviors>
      <serviceBehaviors>
        <behavior name="">
          <serviceMetadata httpGetEnabled="true" />
          <serviceDebug includeExceptionDetailInFaults="false" />
        </behavior>
      </serviceBehaviors>
    </behaviors>

    <serviceHostingEnvironment
        multipleSiteBindingsEnabled="true" />

    <services>
      <service name="CitationAir.MissionPlanning.WebService.Service">
        <endpoint address="" binding="basicHttpBinding" bindingConfiguration="BasicHttpStreamingBinding"
            contract="CitationAir.MissionPlanning.WebService.IService" />
      </service>
    </services>
  </system.serviceModel>

  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
  </system.webServer>
4

0 回答 0