连接字符串没有服务器名称

时间:2016-05-23 14:34:25

标签: winforms client-server connection-string sql-server-express

我正在使用sql server express数据库开发一个应该在本地网络中运行的c#应用程序。我想通过InstallAware为我的项目进行设置。

我想知道如何为客户端设置连接字符串,而我不知道服务器名称,另一方面我只想知道InstanceName就连接到数据库。

ConnectionString = @"Data Source=ServerName\InstanceName;Initial Catalog=Accounting;Persist Security Info=True;User ID=sa;Password=password";

1 个答案:

答案 0 :(得分:0)

public static string GetServerName()
    {
        // https://msdn.microsoft.com/en-us/library/a6t1z9x2%28v=vs.110%29.aspx?f=255&MSPPError=-2147217396

        DataTable dt = SqlDataSourceEnumerator.Instance.GetDataSources();
        DataRow[] dr = dt.Select("InstanceName='myInstanceName'");

        if (dr.Length == 0)
            return null;

        return dr[0]["ServerName"].ToString();
    }