2011-04-12 82 views
1

我的C#winforms项目中有DataClasses.dbml文件。这会自动将ConnectionString类型的设置添加到项目的Settings文件中。整个项目中的连接字符串是使用此设置访问的。在设置文件中编辑参数

现在,当我在我的电脑上工作时,它连接到数据库并正常工作。但是,如何根据设置文件中的客户端主机名和实例名永久性地设置一次新的连接字符串(在安装过程中)。

我试着这样做:

Settings.Default.ConnectionString = "SqlConnectionString"; 
Settings.Default.Save(); 

但它给一个编译时错误,它的只读。

我的唯一目标是根据客户端设置设置连接字符串。我不想让它硬编码。

+0

你如何进行设置?你使用安装包,手动复制等? – archil 2011-04-12 14:10:24

+0

@archil:我使用安装和部署项目进行设置 – Marshal 2011-04-12 14:15:31

回答

1

添加partial类定义像下面

public partial class DataClasses 
{  
    partial void OnCreated() 
    { 
     Connection.ConnectionString = SQLHelpers.GetConnectionStr(); 
    } 
} 

其中SQLHelpers.GetConnectionStr应该查找从用户app.config文件中的设置。

请记住将它放在一个单独的文件中,以便自动生成的dbml文件。