IVsDataProvider.GetUnsupportedReason, méthode (Guid, CommandID, Object)
Obtient une chaîne localisée qui explique pourquoi une opération n'est pas prise en charge 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 GetUnsupportedReason ( _
source As Guid, _
command As CommandID, _
context As Object _
) As String
string GetUnsupportedReason(
Guid source,
CommandID command,
Object context
)
String^ GetUnsupportedReason(
Guid source,
CommandID^ command,
Object^ context
)
abstract GetUnsupportedReason :
source:Guid *
command:CommandID *
context:Object -> string
function GetUnsupportedReason(
source : Guid,
command : CommandID,
context : Object
) : String
Paramètres
source
Type : GuidIdentificateur de source de données de DDEX.
command
Type : CommandIDUne commande qui identifie l'opération.
context
Type : ObjectObjet qui représente le contexte dans lequel l'opération existe.
Valeur de retour
Type : String
Chaîne localisée qui explique pourquoi l'opération spécifiée n'est pas prise en charge, si l'opération en fait n'est pas pris en charge ; sinon, nullune référence null (Nothing en Visual Basic).
Exceptions
Exception | Condition |
---|---|
ArgumentNullException | Le paramètre command est nullune référence null (Nothing en Visual Basic). |
[<ANY>] | L'implémentation de l'GetUnsupportedReason du fournisseur de DDEX a levé une exception. |
Notes
Cette méthode permet aux clients de DDEX de fournir aux utilisateurs une raison spécifique qui explique pourquoi une opération qu'ils ont tenté d'exécuter n'est pas prise en charge de l'environnement actuel. L'environnement peut varier, selon lequel l'édition de Visual Studio exécute et lequel les composants runtime sont installés sur l'ordinateur. La première 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 certain plus grand contexte. Un exemple simple de ceci est commande ouverte pour la connexion, qui se produit dans le contexte d'une connexion particulière. Le paramètre context d'GetUnsupportedReason active un objet reconnaissable à passer et être utilisé dans le cadre de déterminer la raison de ne pas prendre en charge l'opération.
Démarre de cette méthode en déterminant si l'édition de Visual Studio a une raison de ne pas prendre en charge l'opération. Si cette requête retourne nullune référence null (Nothing en Visual Basic) (autrement dit, Visual Studio n'a aucune raison pour ne pas prendre en charge l'opération) et le fournisseur a fourni une implémentation d'IVsDataProviderDynamicSupport, il interroge le fournisseur pour une raison pour ne pas prendre en charge l'opération.
Exemples
Le code suivant montre comment appeler la méthode IsOperationSupported pour déterminer si le fournisseur prend en charge supprimer un nœud particulier Explorateur de données. Sinon, le code appelle GetUnsupportedReason pour déterminer un message approprié pour décrire pourquoi l'opération n'est pas prise en charge.
using System;
using System.Windows.Forms;
using System.ComponentModel.Design;
using Microsoft.VisualStudio.Data.Core;
using Microsoft.VisualStudio.Data.Services;
public class DDEX_IVsDataProviderExample7
{
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
- Confiance totale accordée à l'appelant immédiat. Ce membre ne peut pas être utilisé par du code d'un niveau de confiance partiel. Pour plus d'informations, voir Utilisation de bibliothèques à partir de code d'un niveau de confiance partiel.