Compartilhar via


SqlDataSourceEnumerator.GetDataSources Método

Definição

Recupera um DataTable que contém informações sobre todas as instâncias visíveis do SQL Server.

public:
 override System::Data::DataTable ^ GetDataSources();
public override System.Data.DataTable GetDataSources ();
override this.GetDataSources : unit -> System.Data.DataTable
Public Overrides Function GetDataSources () As DataTable

Retornos

Uma DataTable que contém informações sobre as instâncias visíveis do SQL Server.

Exemplos

O aplicativo de console a seguir recupera informações sobre todas as instâncias de SQL Server visíveis e exibe as informações na janela do console.

Imports System.Data.Sql  

Module Module1  
  Sub Main()  
    ' Retrieve the enumerator instance and then the data.  
    Dim instance As SqlDataSourceEnumerator = _  
     SqlDataSourceEnumerator.Instance  
    Dim table As System.Data.DataTable = instance.GetDataSources()  

    ' Display the contents of the table.  
    DisplayData(table)  

    Console.WriteLine("Press any key to continue.")  
    Console.ReadKey()  
  End Sub  

  Private Sub DisplayData(ByVal table As DataTable)  
    For Each row As DataRow In table.Rows  
      For Each col As DataColumn In table.Columns  
        Console.WriteLine("{0} = {1}", col.ColumnName, row(col))  
      Next  
      Console.WriteLine("============================")  
    Next  
  End Sub  
End Module  
using System.Data.Sql;  

class Program  
{  
  static void Main()  
  {  
    // Retrieve the enumerator instance and then the data.  
    SqlDataSourceEnumerator instance =  
      SqlDataSourceEnumerator.Instance;  
    System.Data.DataTable table = instance.GetDataSources();  

    // Display the contents of the table.  
    DisplayData(table);  

    Console.WriteLine("Press any key to continue.");  
    Console.ReadKey();  
  }  

  private static void DisplayData(System.Data.DataTable table)  
  {  
    foreach (System.Data.DataRow row in table.Rows)  
    {  
      foreach (System.Data.DataColumn col in table.Columns)  
      {  
        Console.WriteLine("{0} = {1}", col.ColumnName, row[col]);  
      }  
      Console.WriteLine("============================");  
    }  
  }  
}  

Comentários

A tabela retornada por esse método contém as seguintes colunas, todas contendo cadeias de caracteres:

Column Descrição
ServerName O nome do servidor.
InstanceName Nome da instância do servidor. Em branco se o servidor estiver sendo executado como a instância padrão.
IsClustered Indica se o servidor faz parte de um cluster.
Versão Versão do servidor:

10.0.xx para SQL Server 2008
10.50.x para SQL Server 2008 R2
11.0.xx para SQL Server 2012
12.0.xx para SQL Server 2014
13.0.xx para SQL Server 2016
14.0.xx para SQL Server 2017

Observação

Devido à natureza do mecanismo usado pelo SqlDataSourceEnumerator para localizar fontes de dados em uma rede, o método nem sempre retornará uma lista completa dos servidores disponíveis e a lista pode não ser a mesma em todas as chamadas. Se você planeja usar essa função para permitir que os usuários selecionem um servidor de uma lista, certifique-se de sempre fornecer uma opção para digitar um nome que não esteja na lista, caso a enumeração do servidor não retorne todos os servidores disponíveis. Além disso, esse método pode levar um tempo significativo para ser executado, portanto, tenha cuidado ao chamá-lo quando o desempenho for crítico.

Aplica-se a

Confira também