SqlClientFactory.CanCreateDataSourceEnumerator 속성

정의

SqlDataSourceEnumerator을 만들 수 있는지 여부를 나타내는 값을 가져옵니다.

public:
 virtual property bool CanCreateDataSourceEnumerator { bool get(); };
public override bool CanCreateDataSourceEnumerator { get; }
member this.CanCreateDataSourceEnumerator : bool
Public Overrides ReadOnly Property CanCreateDataSourceEnumerator As Boolean

속성 값

trueSqlDataSourceEnumerator 만들 수 있으면 이고, 그렇지 않으면 입니다 false.

예제

다음 예제에서는 모든 공급자의 데이터 원본을 열거할 수 있는 코드를 사용하여 사용 가능한 모든 SQL Server 데이터 원본 목록을 표시합니다.

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

설명

클래스는 DbProviderFactory 상속자가 데이터 원본 열거자를 제공할 수 있는지 여부를 나타낼 수 있도록 속성을 제공합니다 CanCreateDataSourceEnumerator . 는 SqlClientFactory 이 속성을 표시하지만 해당 값은 항상 true입니다.

적용 대상

추가 정보