Partager via


SqlDataSourceEnumerator.GetDataSources Méthode

Définition

Récupère un DataTable contenant des informations sur toutes les instances SQL Server visibles.

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

Retours

DataTable contenant des informations sur les instances SQL Server visibles.

Exemples

L’application console suivante récupère des informations sur toutes les instances SQL Server visibles et affiche les informations dans la fenêtre de 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("============================");  
    }  
  }  
}  

Remarques

La table retournée par cette méthode contient les colonnes suivantes, qui contiennent toutes des chaînes :

Colonne Description
ServerName Nom du serveur.
InstanceName Nom de l'instance du serveur. Vide si le serveur s’exécute en tant qu’instance par défaut.
IsClustered Indique si SQL Server fait partie ou non d'un cluster.
Version Version du serveur :

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

Notes

En raison de la nature du mécanisme utilisé par SqlDataSourceEnumerator pour localiser les sources de données sur un réseau, la méthode ne retourne pas toujours la liste complète des serveurs disponibles, et la liste peut ne pas être la même à chaque appel. Si vous envisagez d’utiliser cette fonction pour permettre aux utilisateurs de sélectionner un serveur dans une liste, veillez à toujours fournir une option permettant de taper un nom qui ne figure pas dans la liste, au cas où l’énumération du serveur ne retourne pas tous les serveurs disponibles. En outre, l’exécution de cette méthode peut prendre beaucoup de temps. Par conséquent, veillez à l’appeler lorsque les performances sont critiques.

S’applique à

Voir aussi