Partilhar via


Método IVsDataSource.GetProperty (Guid, String)

Obtém uma propriedade de fonte de dados de DDEX como registrado por um provedor de suporte específico de DDEX.

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

Sintaxe

'Declaração
Function GetProperty ( _
    provider As Guid, _
    name As String _
) As Object
Object GetProperty(
    Guid provider,
    string name
)
Object^ GetProperty(
    Guid provider, 
    String^ name
)
abstract GetProperty : 
        provider:Guid * 
        name:string -> Object
function GetProperty(
    provider : Guid, 
    name : String
) : Object

Parâmetros

  • provider
    Tipo: Guid

    O identificador de um provedor de suporte de DDEX.

  • name
    Tipo: String

    O nome da propriedade para recuperar.

Valor de retorno

Tipo: Object
O valor da propriedade, se existir; caso contrário, nulluma referência nula (Nothing no Visual Basic).

Exceções

Exceção Condição
ArgumentNullException

O parâmetro de name foi nulluma referência nula (Nothing no Visual Basic).

Comentários

Uma fonte de dados de DDEX pode registrar um conjunto de propriedades que são acessadas por clientes de DDEX para determinar informações sobre a fonte de dados. Além disso, cada provedor de DDEX que suporta uma fonte de dados de DDEX pode registrar as propriedades específicas de provedor associadas com a fonte de dados de DDEX.

Quando o parâmetro de provider é GUID vazia, esse método retorna um valor de propriedade global da fonte de dados abrindo a chave do Registro raiz da fonte de dados de DDEX (nas fontes de dados feche o seção local de Registro do Visual Studio) e solicitando um valor sob a chave que tem nameespecificado. Quando o parâmetro de provedor é um identificador válido de suporte do provedor de DDEX, esse método retorna um valor de propriedade específica do provedor de fonte de dados abrindo a subchave de suporte do provedor sob a chave de Registro raiz da fonte de dados e solicitando um valor nesta subchave com nameespecificado. Depois que uma propriedade específica for solicitada, seu valor é salvo na memória em tempo de execução de DDEX e não atualizado até que o Visual Studio é reiniciado.

Exemplos

O código a seguir demonstra a implementação de propriedade de DisplayName . Como cadeias de caracteres localizados são fornecidas por provedores de suporte, determina um provedor de suporte apropriado para usar com base no provedor padrão e/ou que os provedores fornecem valores para a propriedade de DisplayName . Então defina isso para a cadeia de caracteres encontrada real usando a API de provedor de DDEX.

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

public class DDEX_IVsDataSourceExample2
{
    public static string GetSourceDisplayName(
        IServiceProvider serviceProvider,
        IVsDataSource dataSource)
    {
        string displayName = null;
        string resourceId = null;
        Guid provider = dataSource.DefaultProvider;
        if (provider != Guid.Empty)
        {
            resourceId = dataSource.GetProperty(provider, "DisplayName") as string;
        }
        if (resourceId == null)
        {
            foreach (Guid providerId in dataSource.GetProviders())
            {
                resourceId = dataSource.GetProperty(
                    providerId, "DisplayName") as string;
                if (resourceId != null)
                {
                    provider = providerId;
                    break;
                }
            }
        }
        if (provider != Guid.Empty && resourceId != null)
        {
            IVsDataProviderManager providerManager = serviceProvider.GetService(
                typeof(IVsDataProviderManager)) as IVsDataProviderManager;
            IVsDataProvider dataProvider = providerManager.Providers[provider];
            displayName = dataProvider.GetString(resourceId);
        }
        return displayName;
    }
}

Segurança do .NET Framework

Consulte também

Referência

IVsDataSource Interface

Sobrecargas GetProperty

Namespace Microsoft.VisualStudio.Data.Core