Udostępnij za pośrednictwem


SqlClientFactory.CanCreateDataSourceEnumerator Właściwość

Definicja

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 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 dziedziczyli mogli wskazać, czy mogą dostarczyć moduł wyliczający źródła danych. Wyświetla SqlClientFactory tę właściwość, ale jej wartość jest zawsze true.

Dotyczy

Zobacz też