Partager via


IVsDataSourceSpecializer.GetType, méthode

Résout un type spécifique au fournisseur nom en sa représentation correspondante d' Type , pour une source de données du détail DDEX.

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

Syntaxe

'Déclaration
Function GetType ( _
    source As Guid, _
    typeName As String _
) As Type
Type GetType(
    Guid source,
    string typeName
)
Type^ GetType(
    Guid source, 
    String^ typeName
)
abstract GetType : 
        source:Guid * 
        typeName:string -> Type 
function GetType(
    source : Guid, 
    typeName : String
) : Type

Paramètres

  • source
    Type : System.Guid
    Un identificateur de source de données de DDEX.
  • typeName
    Type : System.String
    Un type spécifique au fournisseur nom.

Valeur de retour

Type : System.Type
Un objet d' Type représentant le type l'a résolu du type spécifié nom, de la source de données spécifiée de DDEX, si détecté ; sinon, nullune référence null (Nothing en Visual Basic).

Exceptions

Exception Condition
ArgumentNullException

Le paramètre typeName est nullune référence null (Nothing en Visual Basic).

Notes

Un fournisseur applique cette méthode lorsqu'il existe un type noms spécifiés sous forme de chaînes dans les formats tels qu'un fichier XML de prise en charge de données, et ces noms de types ne peut pas être corrigé automatiquement (ou sont résolus correctement) par la méthode d' GetType du CLR.Une utilisation de cette méthode est de développer un espace de noms non spécifié.(Par exemple, si la chaîne est « MyType » elle peut devenir développée à « Company.Product.MyType » avant que le CLR le résoudre.)

Cette méthode est fournie pour raccourcir la spécification d'un fournisseur du type noms, qui peut aider à éviter la duplication des éléments, comme un espace de noms communs, dans toute la base de code.La spécialisation de source de données active fournies par cette méthode davantage à l'aide de le type commun noms pour référencer les types potentiellement différents lorsque différentes sources de données de DDEX sont ciblées par le client.

Exemples

Le code suivant montre comment implémenter cette méthode pour ajouter des espaces de noms différents au type noms, selon la source de données de DDEX.L'exemple hérite de la classe d' DataSourceSpecializer d'infrastructure, qui fournit une implémentation par défaut des autres méthodes sur l'interface.

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

public class MySourceSpecializer5 : DataSourceSpecializer
{
    private static readonly Guid s_dataSource1 =
        new Guid("EB5246D3-277C-4277-910F-111CB9EAD253");

    public override Type GetType(Guid source, string typeName)
    {
        if (source == s_dataSource1)
        {
            typeName = "Company.DdexProvider.Source1." + typeName;
        }
        else
        {
            typeName = "Company.DdexProvider." + typeName;
        }
        return GetType().Assembly.GetType(typeName);
    }
}

Sécurité .NET Framework

Voir aussi

Référence

IVsDataSourceSpecializer Interface

Microsoft.VisualStudio.Data.Core, espace de noms