如何使用C#代码获取可用SQL Server列表?

Jam*_*eel 11 c# sql-server-2008

我创建了一个桌面应用程序.在应用程序启动时,我想显示本地PC上所有可用SQL Server实例的列表,并允许选择要连接的SQL Server名称.

反正有没有获取本地PC上可用的所有SQL Server实例名称的列表?

非常感谢.

Pra*_*ana 15

string myServer = Environment.MachineName;

DataTable servers = SqlDataSourceEnumerator.Instance.GetDataSources();
for (int i = 0; i < servers.Rows.Count; i++)
{
    if (myServer == servers.Rows[i]["ServerName"].ToString()) ///// used to get the servers in the local machine////
     {
         if ((servers.Rows[i]["InstanceName"] as string) != null)
            CmbServerName.Items.Add(servers.Rows[i]["ServerName"] + "\\" + servers.Rows[i]["InstanceName"]);
         else
            CmbServerName.Items.Add(servers.Rows[i]["ServerName"].ToString());
      }
  }
Run Code Online (Sandbox Code Playgroud)

  • 非常感谢,普拉奈先生.它工作100%,但必须修改**servers.Rows ["ServerName"].ToString()**到**servers.Rows [i] ["ServerName"].ToString()**的代码.但是,这就是我想要的. (4认同)