.net 如何在C中获取服务器名和实例名列表#

.net 如何在C中获取服务器名和实例名列表#,.net,sql-server,list,instance,server-name,.net,Sql Server,List,Instance,Server Name,我想在同一SQLServerManagementStudio中显示服务器名称列表 当我使用 SqlDataSourceEnumerator instance = SqlDataSourceEnumerator.Instance; System.Data.DataTable table = instance.GetDataSources(); 在返回列表中,服务器名称列表为true,但实例名称为false。对于我的电脑,服务器名为[电脑名]\SQLEXPRESS,但实例名的返回值为none 多谢

我想在同一SQLServerManagementStudio中显示服务器名称列表

当我使用

SqlDataSourceEnumerator instance = SqlDataSourceEnumerator.Instance;
System.Data.DataTable table = instance.GetDataSources();
在返回列表中,服务器名称列表为true,但实例名称为false。对于我的电脑,服务器名为
[电脑名]\SQLEXPRESS
,但实例名的返回值为none

多谢各位

SQL server的已安装实例名称用于读取您的计算机注册表。它将从本地计算机获取所有SQL实例

可能重复的
        RegistryKey rk = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Microsoft SQL Server");
        String[] instances = (String[])rk.GetValue("InstalledInstances");
        if (instances.Length > 0)
        {
            foreach (String element in instances)
            {
                if (element == "MSSQLSERVER")
                    Console.WriteLine(System.Environment.MachineName);
                else
                    Console.WriteLine(System.Environment.MachineName + @"\" + element);

            }
            Console.ReadLine();
        }