Partager via


IVsDataSource.GetProviders, méthode

Obtient les fournisseurs de DDEX qui prennent en charge cette source de données de DDEX.

Espace de noms :  Microsoft.VisualStudio.Data.Core
Assembly :  Microsoft.VisualStudio.Data.Core (dans Microsoft.VisualStudio.Data.Core.dll)

Syntaxe

'Déclaration
Function GetProviders As Guid()
Guid[] GetProviders()
array<Guid>^ GetProviders()
abstract GetProviders : unit -> Guid[] 
function GetProviders() : Guid[]

Valeur de retour

Type : array<Guid[]
Un tableau d'identificateurs de fournisseur de DDEX qui représentent les fournisseurs valides et enregistrés de DDEX qui prennent en charge cette source de données de DDEX.

Notes

Une source de données de DDEX est définie uniquement par les entrées du Registre et n'a pas une implémentation associée. En fait, un ou plusieurs fournisseurs de DDEX offrent la prise en charge de la source de données de DDEX. C'est ici que l'implémentation fournie. Cette méthode permet aux clients de DDEX pour accéder aux un-à-plusieurs mappage entre les sources de données de DDEX et prise en charge des fournisseurs de DDEX.

Celle-ci lit la liste des fournisseurs de prise en charge en ouvrant la clé de SupportingProviders sous l'inscription de la source de données de DDEX dans la ruche locale de Registre Visual Studio. Il s'en attend à ce que les sous-clés soient les chaînes valides du GUID, et qui sont considérées comme non valides sont ignorées. En outre, les fournisseurs de DDEX répertoriées qui ne sont pas stockés ou non disponible dans l'environnement actif ne sont pas retournés par cette méthode.

Exemples

Le code suivant montre comment un client peut récupérer une source de données de détail DDEX et sortir les noms de chaque fournisseur de prise en charge de DDEX.

using System;
using System.Diagnostics;
using Microsoft.VisualStudio.Data.Core;

public class DDEX_IVsDataSourceExample3
{
    public static void OutputSupportingProviders(
        IServiceProvider serviceProvider,
        IVsDataSource dataSource)
    {
        IVsDataProviderManager providerManager =
            serviceProvider.GetService(typeof(IVsDataProviderManager))
                as IVsDataProviderManager;
        foreach (Guid providerGuid in dataSource.GetProviders())
        {
            IVsDataProvider provider = providerManager.Providers[providerGuid];
            Trace.WriteLine(provider.Name);
        }
    }
}

Sécurité .NET Framework

Voir aussi

Référence

IVsDataSource Interface

Microsoft.VisualStudio.Data.Core, espace de noms