Share via


IVsDataSource.DisplayName, propriété

Obtient le nom complet de la 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
ReadOnly Property DisplayName As String
string DisplayName { get; }
property String^ DisplayName {
    String^ get ();
}
abstract DisplayName : string with get
function get DisplayName () : String

Valeur de propriété

Type : String
Nom complet de la source de données de DDEX.

Notes

Le nom complet d'une source de données de DDEX est une chaîne localisée qui peut être affichée par les clients de DDEX aux utilisateurs finaux. Un exemple de cela se produit dans la connexion de données boîte de dialogue Choisir la source de données, où une source de données et le fournisseur de DDEX sont sélectionnés par l'utilisateur.

Cette propriété détermine le nom complet en appelant la méthode GetProperty, en passant le fournisseur de prise en charge par défaut (le cas échéant) et le paramètre DisplayName, récupérer un ID de ressource de type chaîne En cas de échec, la propriété lance simplement l'itération via des fournisseurs de prise en charge, interrogeant chacun pour la même propriété jusqu'à ce qu'une valeur non null est retournée. Il appelle ensuite la méthode GetString pour récupérer la chaîne localisée associée à l'ID de ressource Si aucune ressource n'existe, la valeur de la propriété IVsDataSource.Name est retournée.

Valeur d'exemple pour cette propriété peut être « Microsoft SQL Server ».

Exemples

Le code suivant illustre l'implémentation de la propriété DisplayName. Les chaînes localisées sont fournies uniquement par les fournisseurs de prise en charge, il détermine un fournisseur de prise en charge approprié à utiliser selon le fournisseur par défaut et/ou que les fournisseurs -vous que valeurs pour la propriété DisplayName. Il résout celle-ci à la chaîne localisée réelle à l'aide de l'API fournisseur 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;
    }
}

Sécurité .NET Framework

Voir aussi

Référence

IVsDataSource Interface

Microsoft.VisualStudio.Data.Core, espace de noms