部署网站后,远程数据库连接失败

问题描述

| 我使用GoDaddy的在线数据库管理器创建了一个数据库,但是一旦部署ASP.NET项目就无法查询它。在我的本地计算机上,一切正常。我有一个充满数据的数据网格。 以下是我从本地计算机查询数据库的步骤: 创建一个Silverlight应用程序。将SL项目托管在ASP.NET Web应用程序中。启用WCF RIA服务 将新的实体模型添加到ASP.NET项目。实体连接字符串指向远程数据库 将域服务添加到ASP.NET项目 使用左侧的“数据源”选项卡将数据网格添加到Silverlight项目 运行应用程序时,可以在本地计算机上用数据填充网格。当我使用“发布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,PublicKeyToken=31bf3856ad364e35\" />
    </httpModules>
    <compilation debug=\"true\" targetFramework=\"4.0\">
      <assemblies>
        <add assembly=\"System.Data.Entity,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>

解决方法

我听说SL应用程序需要一个clientaccesspolicy.xml文件。使用WCF RIA服务时是否需要? 是。您必须明确允许跨域访问。当您的网站和数据库服务器位于同一台“域”(即本地计算机)上时,它在本地工作。 “ 1”文件必须位于托管服务的域的根目录中。 您也可以使用
crossdomain.xml
-Silverlight同时支持。 资源