IVsDataProvider.GetUnsupportedReason-Methode (Guid, CommandID, Object)
Ruft eine lokalisierte Zeichenfolge ab, die erläutern, warum ein Vorgang nicht für die angegebene DDEX-Datenquelle unterstützt wird.
Namespace: Microsoft.VisualStudio.Data.Core
Assembly: Microsoft.VisualStudio.Data.Core (in Microsoft.VisualStudio.Data.Core.dll)
Syntax
'Declaration
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
Parameter
source
Typ: GuidEin DDEX-Datenquellenbezeichner.
command
Typ: CommandIDEin Befehl, der den Vorgang identifiziert.
context
Typ: ObjectEin Objekt, das den Kontext darstellt, in dem der Vorgang vorhanden ist.
Rückgabewert
Typ: String
Eine lokalisierten Zeichenfolge, die erläutern, warum der angegebene Vorgang wird nicht unterstützt, wenn die Operation tatsächlich nicht unterstützt wird; andernfalls nullein Nullverweis (Nothing in Visual Basic).
Ausnahmen
Ausnahme | Bedingung |
---|---|
ArgumentNullException | Der command-Parameter ist nullein Nullverweis (Nothing in Visual Basic). |
[<ANY>] | Die GetUnsupportedReason des DDEX- implementierung Anbieters hat eine Ausnahme aus. |
Hinweise
Diese Methode können DDEX-Clients, um die Benutzer mit einem bestimmten Grund bereitzustellen mit Erläuterungen, warum ein Vorgang, den sie haben versucht, der ausgeführt wird, nicht in die aktuelle Umgebung unterstützt wird. Die Umgebung kann variieren, je nach Version von Visual Studio ausgeführt wird und der Laufzeitkomponenten auf dem Computer installiert werden. Erstere wird in der Regel durch die Edition von Visual Studio (beispielsweise, einige Befehle auf den Express-Editionen restriktiv), gesteuert, während das zweite Element in der Regel durch IVsDataProviderDynamicSupport Implementierung eines Anbieters gesteuert wird, sofern vorhanden.
Viele Vorgänge treten in eines größeren Kontexts auf. Das einfachste Beispiel hierfür ist offener Befehl für die Verbindung, die im Kontext einer bestimmten Verbindung fungiert. Der context-Parameter von GetUnsupportedReason aktiviert ein erkennbares in zu übergebene und Objekt, als Teil das Bestimmen des Grunds für die Unterstützung des Vorgangs nicht verwendet wurde.
Startet dieser Methode über das Bestimmen, dass die Version von Visual Studio einen Grund für die Unterstützung nicht des Vorgangs aufweist. Wenn diese Abfrage nullein Nullverweis (Nothing in Visual Basic) (das heißt, Visual Studio hat keinen Grund für die Unterstützung nicht des Vorgangs) zurückgibt und Anbieter verfügt eine IVsDataProviderDynamicSupport Implementierung angegeben, ruft er den Anbieter für einen Grund für die Unterstützung nicht des Vorgangs ab.
Beispiele
Der folgende Code zeigt, wie die IsOperationSupported-Methode aufruft, um zu bestimmen, ob der Anbieter das Löschen eines bestimmten Datenexplorerknotens unterstützt. Wenn dies nicht der Fall ist, ruft der Code GetUnsupportedReason auf, um eine entsprechende Meldung zu ermitteln, um zu erläutern, warum der Vorgang nicht unterstützt wird.
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;
}
}
.NET Framework-Sicherheit
- Volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer. Dieser Member kann von nur teilweise vertrauenswürdigem Code nicht verwendet werden. Weitere Informationen finden Sie unter Verwenden von Bibliotheken aus teilweise vertrauenswürdigem Code.