1

所以在我的开发机器上,我安装了 SQL Server Express 和 Visual Studio。我完成了应用程序的创建,一切正常。这是 App.config 文件中的连接字符串:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <add name="ColegioDBEntities"
         connectionString="metadata=res://*/Repositories.ColegioModel.csdl|res://*/Repositories.ColegioModel.ssdl|res://*/Repositories.ColegioModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=.\SQLEXPRESS;Initial Catalog=ColegioDB;Integrated Security=True;MultipleActiveResultSets=True&quot;"
         providerName="System.Data.EntityClient" />
  </connectionStrings>

  <startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0" />
  </startup>
</configuration>

我创建了一个安装项目,并希望将应用程序安装在与 SQL Server Express 安装位置相同的网络上的虚拟机上(以模拟部署条件)。连接字符串是什么?比如,192.168.2.102/SQLExpress?

有任何想法吗?

4

2 回答 2

0

sql 连接字符串是“connectionString”属性的一部分,并被编码为带有屏蔽引号的子字符串:

provider connection string=&quot;Data Source=.\SQLEXPRESS;Initial Catalog=ColegioDB;Integrated Security=True;MultipleActiveResultSets=True&quot;

因此您的 IP 地址的配置必须如下所示:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <add name="ColegioDBEntities"
         connectionString="metadata=res://*/Repositories.ColegioModel.csdl|res://*/Repositories.ColegioModel.ssdl|res://*/Repositories.ColegioModel.msl;provider=System.Data.SqlClient;provider connection string=&quot;Data Source=192.168.2.102\SQLEXPRESS;Initial Catalog=ColegioDB;Integrated Security=True;MultipleActiveResultSets=True&quot;"
         providerName="System.Data.EntityClient" />
  </connectionStrings>

  <startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0" />
  </startup>
</configuration>
于 2011-08-22T17:38:18.923 回答
0

肯定需要 IP 地址或主机名,然后是 SQL Express 的实例名称。考虑默认情况下 SQL Express 安装时禁用了 tcp 和命名管道,因此您必须在配置管理器中启用这些工具,然后才能从另一台机器远程访问它。

于 2011-02-07T13:53:09.773 回答