2010-05-12 62 views
0

您好,我有一个将我的silverlight项目部署到现有网站(使用aspx页面的普通网站)的问题。RIA - Silverlight 3问题部署到正在运行的网站

一切工作正常,只是当silverlight试图连接到RIA服务,它失败,因为该网站每次重定向到登录页面。

我发现这对似乎使烦恼网站的web.config文件:

<system.serviceModel> 
    <bindings> 
     <basicHttpBinding> 
      <binding name="AdWsSoap" closeTimeout="00:01:00" openTimeout="00:01:00" 
       receiveTimeout="00:10:00" sendTimeout="00:01:00" allowCookies="false" 
       bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard" 
       maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536" 
       messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered" 
       useDefaultWebProxy="true"> 
       <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384" 
        maxBytesPerRead="4096" maxNameTableCharCount="16384" /> 
       <security mode="None"> 
        <transport clientCredentialType="None" proxyCredentialType="None" 
         realm="" /> 
        <message clientCredentialType="UserName" algorithmSuite="Default" /> 
       </security> 
      </binding> 
     </basicHttpBinding> 
    </bindings> 
    <client> 
     <endpoint address="http://webserver/ADWS/AdWs.asmx" binding="basicHttpBinding" 
      bindingConfiguration="AdWsSoap" contract="AdWs.AdWsSoap" name="AdWsSoap" /> 
    </client> 


    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" /> 


</system.serviceModel> 

正如你可以看到,该网站使用的是自定义绑定,我想的是,RIA服务通通过它,这就是为什么它重定向到该网站的登录页面。 我无法修改此自定义绑定(因为它会影响许多其他使用此配置运行的应用程序)。

有没有办法解决这个问题,也许指定RIA服务不使用此自定义绑定?

我试图创建我自己的.SVC文件,并覆盖AddEndpoints这样:

protected override void AddEndpoints() 
    { 
     foreach (Uri uri in this.BaseAddresses) 
     { 
      AddRestWithJsonEndpoint(uri); 
     } 
    } 

但它一直在通过自定义绑定。请帮忙。

在此先感谢。

回答

0

玩了一段时间后,我发现了如何解决我的问题:

首先,一切都取决于web.config文件,它包含的标签。例如,就我而言,我为silverlight配置创建了一个单独的配置文件,但最终我需要的是将我的silverlight的项目web.config与我在主网站上获得的项目合并。其次,注意silverlight项目周围使用的连接字符串,在我的情况下,我在项目周围的某些图层中获得了许多连接字符串,所以我忘了复制一些主web.config上的连接字符串,那是我有错误的原因。

希望它有助于某人。

再见。