SqlDataSourceEnumerator.GetDataSources 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
檢索包含所有可見SQL Server實例資訊的 DataTable。
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
傳回
一個包含可見SQL Server實例資訊的 DataTable。
範例
以下主控台應用程式會取得所有可見 SQL Server 實例的資訊,並在主控台視窗中顯示相關資訊。
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("============================");
}
}
}
備註
此方法回傳的表格包含以下欄位,且皆包含字串:
| Column | 說明 |
|---|---|
| ServerName | 伺服器的名稱。 |
| InstanceName | 伺服器實例的名稱。 如果伺服器以預設實例的形式執行,則為空白。 |
| IsClustered | 指出伺服器是否為叢集的一部分。 |
| 版本 | 伺服器版本: 10.0.xx for SQL Server 2008 10.50.x for SQL Server 2008 R2 11.0.xx for SQL Server 2012 12.0.xx for SQL Server 2014 13.0.xx for SQL Server 2016 14.0.xx for SQL Server 2017 |
Note
由於 用於 SqlDataSourceEnumerator 在網路上定位資料來源的機制特性,該方法不一定會回傳完整的可用伺服器清單,且每次呼叫的清單可能都不相同。 如果你打算用這個功能讓使用者從清單中選擇伺服器,務必同時提供輸入清單中不在清單名稱的選項,以防伺服器列舉無法回傳所有可用伺服器。 此外,此方法執行可能花費相當長的時間,因此在效能關鍵時呼叫時要謹慎。