Freigeben über


SqlDataSourceEnumerator.GetDataSources Methode

Definition

Ruft eine DataTable ab, die Informationen über alle sichtbaren SQL Server-Instanzen enthält.

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

Gibt zurück

Eine DataTable, die Informationen über die sichtbaren SQL Server-Instanzen enthält.

Beispiele

Die folgende Konsolenanwendung ruft Informationen zu allen sichtbaren SQL Server-Instanzen ab und zeigt die Informationen im Konsolenfenster an.

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("============================");  
    }  
  }  
}  

Hinweise

Die von dieser Methode zurückgegebene Tabelle enthält die folgenden Spalten, die alle Zeichenfolgen enthalten:

Spalte Beschreibung
ServerName Name des Servers.
InstanceName Name der Serverinstanz. Leer, wenn der Server als Standardinstanz ausgeführt wird.
IsClustered Gibt ab, ob die Serverinstanz zu einem Cluster gehört.
Version Version des Servers:

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

Hinweis

Aufgrund der Art des Mechanismus, der zum Suchen von SqlDataSourceEnumerator Datenquellen in einem Netzwerk verwendet wird, gibt die Methode nicht immer eine vollständige Liste der verfügbaren Server zurück, und die Liste ist möglicherweise nicht bei jedem Aufruf identisch. Wenn Sie diese Funktion verwenden möchten, um Benutzern die Auswahl eines Servers aus einer Liste zu ermöglichen, stellen Sie sicher, dass Sie immer auch eine Option angeben, um einen Namen einzugeben, der nicht in der Liste enthalten ist, falls die Serveraufzählung nicht alle verfügbaren Server zurückgibt. Darüber hinaus kann die Ausführung dieser Methode viel Zeit in Anspruch nehmen. Achten Sie daher darauf, sie aufzurufen, wenn die Leistung kritisch ist.

Gilt für:

Weitere Informationen