2011-04-19 79 views
1

我使用GoDaddy的在線數據庫管理器創建了一個數據庫,但是我在部署我的ASP.NET項目後無法查詢它。在我的本地機器上,一切正常。我有一個充滿數據的數據網格。網站部署時遠程數據庫連接失敗

這裏是我跟着從我的本地機器上查詢數據庫的步驟:

  • 創建一個Silverlight應用程序。在ASP.NET Web應用程序中承載SL項目。啓用WCF RIA服務
  • 將新實體模型添加到ASP.NET項目。實體連接字符串點到遠程數據庫
  • 添加域服務的ASP.NET項目
  • 添加一個數據網格,以Silverlight項目通過使用左手側的數據源選項卡

當我運行這個應用程序,我可以在我的本地機器上填充數據。當我使用Publish Web嚮導進行FTP部署時,該應用程序已成功上傳,因爲我可以通過FTP應用程序查看這些文件。

我在做什麼錯?我聽說SL應用程序需要一個clientaccesspolicy.xml文件。使用WCF RIA服務時是否需要?我是否需要更改我的Web.config文件?這裏是VS自動生成的配置文件:

<?xml version="1.0" encoding="utf-8"?> 
<!-- 
    For more information on how to configure your ASP.NET application, please visit 
    http://go.microsoft.com/fwlink/?LinkId=169433 
    --> 
<configuration> 
    <system.webServer> 
    <modules runAllManagedModulesForAllRequests="true"> 
     <add name="DomainServiceModule" preCondition="managedHandler" 
     type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule, System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> 
    </modules> 
    <validation validateIntegratedModeConfiguration="false" /> 
    </system.webServer> 
    <system.web> 
    <httpModules> 
     <add name="DomainServiceModule" type="System.ServiceModel.DomainServices.Hosting.DomainServiceHttpModule, System.ServiceModel.DomainServices.Hosting, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" /> 
    </httpModules> 
    <compilation debug="true" targetFramework="4.0"> 
     <assemblies> 
     <add assembly="System.Data.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> 
     </assemblies> 
    </compilation> 
    </system.web> 
    <connectionStrings> 
    <add name="(Entities Here)" connectionString="metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=(Source Here);Initial Catalog=(Catalog Here);User ID=(ID Here);Password=(Password Here);MultipleActiveResultSets=True&quot;" providerName="System.Data.EntityClient" /> 
    </connectionStrings> 
    <system.serviceModel> 
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" 
     multipleSiteBindingsEnabled="true" /> 
    </system.serviceModel> 
</configuration> 

回答

1

聽說SL應用程序需要一個clientaccesspolicy.xml文件。使用WCF RIA服務時是否需要?

是的。您必須明確允許跨域訪問。它在本地工作,因爲您的網站和數據庫服務器位於同一個「域」 - 本地計算機上。

clientaccesspolicy.xml文件必須位於承載服務的域的根目錄中。

您還可以使用crossdomain.xml - Silverlight支持兩者。

Source

+0

只需添加在根目錄下的文件,但我仍然無法查看應用程序。我在瀏覽器中遇到了「服務器錯誤」/「應用程序」運行時錯誤。 – user246392 2011-04-19 12:09:35