目前我正在使用SQL Server CE来保存我提供的数据.sdf
以及app.config
中提到的指向此.sdf
文件的连接字符串。
现在,我希望为用户提供灵活性,使数据存储在自己的SQL Server数据库中(如果存在的话)。
现在我遇到如果用户选择使用自己的数据库时如何在运行时更改连接字符串的问题?
或者,如果限制它们使用我预定义的.mdf
文件,如何将其附加到SQL Server中?
答案 0 :(得分:1)
我的建议是在配置文件(app或web)中有2个连接字符串。有一个特殊的部分直观地称为ConnectionStrings。然后,您可以根据其他设置在它们之间切换。
答案 1 :(得分:0)
只要您有存储新设置的位置(即web或app配置文件),动态更改连接字符串实际上非常容易。如果您提供了输入服务器信息的方法,则可以使用ConfigurationManager类来更新app / web.config。
Ado.net通常在几乎所有数据库连接对象上都有参数,允许您将连接字符串指定为参数。此外,还有一些辅助类可用于动态构造连接字符串,如SqlConnectionStringBuilder或EntityConnectionStringBuilder。我个人喜欢实体框架,因为它允许您从模型本身创建数据库(如果它尚不存在),前提是您已经有连接字符串。