Поделиться через


SqlDataSourceEnumerator.GetDataSources Метод

Определение

Извлекает объект DataTable, в котором содержатся сведения обо всех видимых экземплярах 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

Возвращаемое значение

Объект DataTable, в котором содержатся сведения о видимых экземплярах SQL Server.

Примеры

Следующее консольное приложение извлекает сведения обо всех видимых экземплярах SQL Server и отображает их в окне консоли.

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

Комментарии

Таблица, возвращаемая этим методом, содержит следующие столбцы, все из которых содержат строки:

Столбец Описание
ServerName Имя сервера.
InstanceName Имя экземпляра сервера. Если сервер работает как экземпляр по умолчанию, то поле остается пустым.
IsClustered Указывает, является ли сервер частью кластера.
Version Версия сервера:

10.0.xx для SQL Server 2008
10.50.x для SQL Server 2008 R2
11.0.xx для SQL Server 2012 г.
12.0.xx для SQL Server 2014 г.
13.0.xx для SQL Server 2016 г.
14.0.xx для SQL Server 2017 г.

Примечание

Из-за характера механизма, используемого SqlDataSourceEnumerator для поиска источников данных в сети, метод не всегда возвращает полный список доступных серверов, и список может не совпадать при каждом вызове. Если вы планируете использовать эту функцию, чтобы позволить пользователям выбирать сервер из списка, убедитесь, что вы всегда предоставляете параметр для ввода имени, которое отсутствует в списке, на случай, если перечисление сервера не возвращает все доступные серверы. Кроме того, выполнение этого метода может занять значительное время, поэтому будьте осторожны при его вызове, когда производительность важна.

Применяется к

См. также раздел