SqlDataSourceEnumerator.GetDataSources Metodo

Definizione

Recupera DataTable contenente informazioni su tutte le istanze visibili di 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

Restituisce

DataTable contenente informazioni sulle istanze visibili di SQL Server.

Esempio

L'applicazione console seguente recupera informazioni su tutte le istanze di SQL Server visibili e visualizza le informazioni nella finestra della console.

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

Commenti

La tabella restituita da questo metodo contiene le colonne seguenti, tutte contenenti stringhe:

Colonna Descrizione
ServerName Nome del server.
InstanceName Nome dell'istanza del server. Vuota se il server è in esecuzione come istanza predefinita.
IsClustered Indica se il server fa parte di un cluster.
Version Versione del server:

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

Nota

A causa della natura del meccanismo usato da SqlDataSourceEnumerator per individuare le origini dati in una rete, il metodo non restituirà sempre un elenco completo dei server disponibili e l'elenco potrebbe non essere lo stesso in ogni chiamata. Se si prevede di usare questa funzione per consentire agli utenti di selezionare un server da un elenco, assicurarsi di fornire sempre un'opzione per digitare un nome non incluso nell'elenco, nel caso in cui l'enumerazione del server non restituisca tutti i server disponibili. Inoltre, questo metodo può richiedere una quantità significativa di tempo per l'esecuzione, quindi prestare attenzione a chiamarlo quando le prestazioni sono critiche.

Si applica a

Vedi anche