当您开发使用数据库服务器(例如 MsSQL)的应用程序时,将服务器与您的应用程序一起安装在安装到的每台 PC 上是不明智的。例如,如果客户有一个包含 10 台计算机的本地网络,你会怎么做?您要在所有 10 个中安装 SQL Server 吗?如果是这样,如果他们需要共享数据怎么办?
因此,您的最佳方法(基于其他应用程序的常见做法)将是允许用户将 SQL 服务器安装在他想要的位置,并让他配置您的应用程序并将其指向服务器的位置。如果您遵循该路径,则应用程序的配置可以在设置应用程序或应用程序本身中。
现在关于开发阶段,我有类似的情况,我需要在两台不同的计算机上开发相同的应用程序。我所做的是使用命名实例“sqlexpress”在它们两个中安装 SQL 服务器,然后在我使用的应用程序中
Data.SqlClient.SqlConnectionStringBuilder
类来构建连接字符串。我做了这样的事情:
Public Function getDevConnectionString() As String
Dim csb As New Data.SqlClient.SqlConnectionStringBuilder(My.Settings.dbConnectionString) '<-My original cs in app settings
csb.DataSource = My.Computer.Name & "\sqlexpress"
Return csb.ConnectionString
End Function
每当我需要连接字符串时,我只需调用 getDevConnectionString(),它会根据计算机名称和 sql 服务器实例名称返回连接字符串。例如:
Dim cs As String
#If DEBUG Then
cs = getDevConnectionString()
#Else
cs = getReleaseConnectionString()
#End If
其中 getReleaseConnectionString() 是返回客户配置的连接字符串的函数。
希望这为您指明正确的方向...