CanCreateDataSourceEnumerator Property
Collapse the table of content
Expand the table of content

SqlClientFactory.CanCreateDataSourceEnumerator Property


Returns true if a SqlDataSourceEnumerator can be created; otherwise false .

Namespace:   System.Data.SqlClient
Assembly:  System.Data (in System.Data.dll)

public override bool CanCreateDataSourceEnumerator { get; }

Property Value

Type: System.Boolean

true if a SqlDataSourceEnumerator can be created; otherwise false.

The DbProviderFactory class provides the CanCreateDataSourceEnumerator property so that inheritors can indicate whether they can provide a data source enumerator. The SqlClientFactory displays this property, but its value is always true.

The following example displays a list of all available SQL Server data sources, using code that could enumerate data sources for any provider.

using System;
using System.Data;
using System.Data.Common;
using System.Data.SqlClient;

class Program
    static void Main()
        // List all SQL Server instances:

        Console.WriteLine("Press any key to continue...");
    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 =
            DataTable table = instance.GetDataSources();

            foreach (DataRow row in table.Rows)
                    row["ServerName"], row["InstanceName"]);

.NET Framework
Available since 2.0
Return to top
© 2016 Microsoft