Share via


IVsDataProvider.IsOperationSupported, méthode (Guid, CommandID, Object)

Détermine si une opération spécifique en charge par le fournisseur dans l'environnement actif, pour la source de données spécifiée de DDEX.

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

Syntaxe

'Déclaration
Function IsOperationSupported ( _
    source As Guid, _
    command As CommandID, _
    context As Object _
) As Boolean
bool IsOperationSupported(
    Guid source,
    CommandID command,
    Object context
)
bool IsOperationSupported(
    Guid source, 
    CommandID^ command, 
    Object^ context
)
abstract IsOperationSupported : 
        source:Guid * 
        command:CommandID * 
        context:Object -> bool 
function IsOperationSupported(
    source : Guid, 
    command : CommandID, 
    context : Object
) : boolean

Paramètres

  • source
    Type : System.Guid
    Un identificateur de source de données de DDEX.
  • context
    Type : System.Object
    Un objet qui représente le contexte dans lequel l'exécution existe.

Valeur de retour

Type : System.Boolean
true si l'opération est prise en charge par le fournisseur dans l'environnement actuel ; sinon, false.

Exceptions

Exception Condition
ArgumentNullException

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

[<ANY>]

L'implémentation de l' IsOperationSupported du fournisseur de DDEX a levé une exception.

Notes

Cette méthode permet aux clients de DDEX de vérifier si des opérations spécifiques sont prises en charge par un fournisseur de DDEX dans l'environnement actuel.L'environnement peut différer, en fonction de l'édition de Visual Studio exécute et lequel les composants d'exécution sont installés sur l'ordinateur.Le précédent est généralement contrôlée par l'édition de Visual Studio (par exemple, restreignant des commandes dans les éditions Express), alors que ce dernier est généralement contrôlée par l'implémentation d' IVsDataProviderDynamicSupport d'un fournisseur, s'il y en a une.

De nombreuses opérations se produisent dans un contexte plus large.L'exemple le plus simple pour ce est la commande ouverte pour la connexion, qui se produit dans le contexte d'une connexion particulière.Le paramètre d' context d' IsOperationSupported permet à un objet reconnaissable d'être passé dans et utilisé dans le cadre de déterminer si l'opération est prise en charge.

IsOperationSupported commence par déterminer si l'édition de Visual Studio prend en charge l'exécution.Si Visual Studio prend en charge l'exécution et le fournisseur a fourni une implémentation d' IVsDataProviderDynamicSupport , la méthode recherche le fournisseur pour déterminer si l'opération est prise en charge.

Notez que par défaut l'édition de Visual Studio prend en charge toutes les commandes et exclut sélectionnez un ensemble de commandes dans certaines conditions.Cela signifie que les opérations de fournisseur personnalisé sont prises en charge par l'édition de Visual Studio et sont donc contrôlées par le fournisseur.

Exemples

Le code suivant montre comment appeler cette méthode pour déterminer si le fournisseur prend en charge la suppression d'un nœud particulier explorateur de données.Sinon, il appelle la méthode d' GetUnsupportedReason pour déterminer un message approprié pour décrire la raison pour laquelle l'opération n'est pas prise en charge.

C#

using System;
using System.Windows.Forms;
using System.ComponentModel.Design;
using Microsoft.VisualStudio.Data.Core;
using Microsoft.VisualStudio.Data.Services;

public class DDEX_IVsDataProviderExample8
{
    public static bool AllowDelete(IVsDataProvider provider,
        IVsDataExplorerNode node)
    {
        if (!provider.IsOperationSupported(StandardCommands.Delete, node))
        {
            MessageBox.Show(provider.GetUnsupportedReason(
                StandardCommands.Delete, node));
            return false;
        }
        return true;
    }
}

Sécurité .NET Framework

Voir aussi

Référence

IVsDataProvider Interface

IsOperationSupported, surcharge

Microsoft.VisualStudio.Data.Core, espace de noms