SqlClientFactory.CanCreateDataSourceEnumerator Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera wartość wskazującą, czy można utworzyć element SqlDataSourceEnumerator .
public:
virtual property bool CanCreateDataSourceEnumerator { bool get(); };
public override bool CanCreateDataSourceEnumerator { get; }
member this.CanCreateDataSourceEnumerator : bool
Public Overrides ReadOnly Property CanCreateDataSourceEnumerator As Boolean
Wartość właściwości
true jeśli można utworzyć element SqlDataSourceEnumerator ; w przeciwnym razie false.
Przykłady
Poniższy przykład przedstawia listę wszystkich dostępnych źródeł danych programu SQL Server przy użyciu kodu, który może wyliczać źródła danych dla dowolnego dostawcy.
using System;
using System.Data;
using System.Data.Common;
using System.Data.SqlClient;
class Program
{
static void Main()
{
// List all SQL Server instances:
ListServers(SqlClientFactory.Instance);
Console.WriteLine();
Console.WriteLine("Press any key to continue...");
Console.ReadKey();
}
private static void ListServers(DbProviderFactory factory)
{
// This procedure is provider-agnostic, and can list
// instances of any provider's servers. Of course,
// not all providers can create a data source enumerator,
// so it's best to check the CanCreateDataSourceEnumerator
// property before attempting to list the data sources.
if (factory.CanCreateDataSourceEnumerator)
{
DbDataSourceEnumerator instance =
factory.CreateDataSourceEnumerator();
DataTable table = instance.GetDataSources();
foreach (DataRow row in table.Rows)
{
Console.WriteLine("{0}\\{1}",
row["ServerName"], row["InstanceName"]);
}
}
}
}
Imports System.Data
Imports System.Data.Common
Imports System.Data.SqlClient
Module Module1
Sub Main()
' List all SQL Server instances:
ListServers(SqlClientFactory.Instance)
Console.WriteLine()
Console.WriteLine("Press any key to continue.")
Console.ReadKey()
End Sub
Private Sub ListServers(ByVal factory As DbProviderFactory)
' This procedure is provider-agnostic, and can list
' instances of any provider's servers. Of course,
' not all providers can create a data source enumerator,
' so it's best to check the CanCreateDataSourceEnumerator property
' before attempting to list the data sources.
If factory.CanCreateDataSourceEnumerator Then
Dim instance As DbDataSourceEnumerator = _
factory.CreateDataSourceEnumerator
Dim table As System.Data.DataTable = instance.GetDataSources()
Dim row As DataRow
For Each row In table.Rows
Console.WriteLine("{0}\{1}", _
row("ServerName"), row("InstanceName"))
Next
End If
End Sub
End Module
Uwagi
Klasa DbProviderFactory udostępnia CanCreateDataSourceEnumerator właściwość , aby dziedziczy mogli wskazać, czy mogą dostarczyć moduł wyliczający źródła danych. Wyświetla SqlClientFactory tę właściwość, ale jej wartość to zawsze true.