2008-10-24 53 views
4

每当我从服务器资源管理器中删除一个新的数据库对象到dbml中时,Visual Studio会用设置文件中的连接字符串替换它自动添加到配置文件中的连接字符串中的连接字符串。它们都有完全相同的参数,只是名称不同而已。将连接字符串保存在LINQ设计器文件中

如何强制Visual Studio使用并保留已有的连接字符串?

例如,在DBML-designer.cs,我有这样的:

base(global::System.Configuration.ConfigurationManager.ConnectionStrings["ConnString1"].ConnectionString, mappingSource) 

被自动生成。在我的配置文件中,我有:

<add name="DefaultConnString" connectionString="EXACTLYTHESAME" 
    providerName="System.Data.SqlClient" /> <add name="ConnString1" connectionString="EXACTLYTHESAME" 
    providerName="System.Data.SqlClient" /> 

无论何时将数据库对象拖动到dbml时,都会自动添加ConnString1。

我想让designer.cs使用DefaultConnstring。

回答

1

您需要确保Visual Studio的服务器资源管理器中使用的连接字符串与已在dbml文件中定义的连接字符串相同。

我不太清楚你的意思是不同的名称,你的意思是数据库名称?当我有一个用于开发和生产的不同数据库名称时,我通常所做的是在开发时保持开发连接字符串值,但在主应用程序中更改连接字符串值。这是因为我通常在独立的程序集中开发我的LINQ逻辑。

或者,您保留两个连接字符串:一个用于添加新的数据库对象,另一个用于测试,例如。当然,你必须特别小心地跟踪你将使用的连接字符串。

+0

谢谢,编辑我的问题,所以希望它更清晰了我的意思。 – Stefan 2008-10-31 23:05:40