Partilhar via


Método IVsDataSource.GetProviders

Obtém os provedores de DDEX que suportam essa fonte de dados de DDEX.

Namespace:  Microsoft.VisualStudio.Data.Core
Assembly:  Microsoft.VisualStudio.Data.Core (em Microsoft.VisualStudio.Data.Core.dll)

Sintaxe

'Declaração
Function GetProviders As Guid()
Guid[] GetProviders()
array<Guid>^ GetProviders()
abstract GetProviders : unit -> Guid[] 
function GetProviders() : Guid[]

Valor de retorno

Tipo: array<Guid[]
Uma matriz de identificadores de provedor de DDEX que representam os provedores válidos, registrados de DDEX que suportam essa fonte de dados de DDEX.

Comentários

Uma fonte de dados de DDEX é definida apenas por entradas do Registro e não tem nenhuma implementação associada com ele. Em vez disso, um ou vários provedores de DDEX oferecem suporte para a fonte de dados de DDEX. Aqui é que a implementação é fornecida. Esse método permite que clientes de DDEX para acessar os muitos para mapeamento entre fontes de dados de DDEX e suporte provedores de DDEX.

Este método lê a lista de provedores de suporte abrindo a chave de SupportingProviders sob o registro da fonte de dados de DDEX na seção local de Registro do Visual Studio. As subchaves são esperadas ser cadeias de caracteres válidos de GUID, e algumas que são consideradas como inválida são ignoradas. Além disso, os provedores de DDEX listaram que não são registrados ou não disponível no ambiente atual não são retornados por esse método.

Exemplos

O código a seguir demonstra como um cliente pode recuperar uma fonte de dados específica e saída de DDEX os nomes de cada provedor de suporte 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);
        }
    }
}

Segurança do .NET Framework

Consulte também

Referência

IVsDataSource Interface

Namespace Microsoft.VisualStudio.Data.Core