2

我们正在使用实体框架,大多数开发人员已经命名了SQL Server 2008 R2的实例。如何为所有开发人员设置连接字符串?

是EF使用的连接字符串的样子:

<add name="MyConnectionString" 
connectionString="Data Source=MyInstance\MySource; 
        Initial Catalog=MyDatabase; 
        Integrated Security=True" 
providerName="System.Data.SqlClient" /> 

所以,问题,为多个开发人员,是数据源对每个人都是不同的。

以前,我会使用ODBC DSN来解决这个问题,但是according to this post不是直接可用的。

有没有办法设置连接字符串,以便每个人都可以访问不同的数据源?

+0

为什么不让他们保持单独的配置文件?或者,切换到每个人都可以覆盖的user.config模型? – Tejs 2011-04-07 14:43:47

回答

4

我们在我们的项目中使用别名。每个开发人员都应该创建一个具有相同名称(例如Entitydatabase)的别名,指向他/她的命名实例,因此连接字符串可以相同。 您可以在SQL本机客户端配置节点内的Sql Server配置管理器中创建别名。最好的是将它设置为32位和64位(如果您安装了64位服务器)。另外请确保启用您想要使用的客户端协议(例如TCP或命名管道)以使其工作。 最后,在连接字符串中,只需使用别名作为数据源。

+0

你能详细解释一下吗?在这种情况下什么是别名,以及如何创建一个别名? – Naraen 2011-04-07 14:54:15

+0

谢谢!那就是诀窍;你得到香蕉!唯一的事情是命名实例将使用TCP/IP端口1433(默认值)进行连接。因此,除了启用TCP/IP之外,我还需要为我的命名实例设置一个非默认端口以侦听...并将Alias设置为使用该端口。一旦所有的港口(行星)对齐,这一切工作。我们不使用浏览器服务,所以我们不得不多走一步。 – 2011-04-07 21:28:31

相关问题