Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Obtiene una cadena traducida que describe el motivo que una operación no se admite, del origen de datos especificado de DDEX.
Espacio de nombres: Microsoft.VisualStudio.Data.Core
Ensamblado: Microsoft.VisualStudio.Data.Core (en Microsoft.VisualStudio.Data.Core.dll)
Sintaxis
'Declaración
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
Parámetros
- source
Tipo: System.Guid
Un identificador de origen de datos de DDEX.
- command
Tipo: System.ComponentModel.Design.CommandID
Un comando que identifica la operación.
- context
Tipo: System.Object
Un objeto que representa el contexto en el que la operación existe.
Valor devuelto
Tipo: System.String
Una cadena traducida que describe por qué la operación especificada no se admite, si la operación de hecho no se admite; si no, nullreferencia null (Nothing en Visual Basic).
Excepciones
| Excepción | Condición |
|---|---|
| ArgumentNullException | El valor del parámetro command es nullreferencia null (Nothing en Visual Basic). |
| ArgumentException | El parámetro de context no es un valor esperado para la operación especificada. |
Comentarios
Este método permite a los proveedores de DDEX para devolver una razón concreta que una operación no se admite.Los clientes de DDEX pueden mostrar esta razón al usuario.
Ejemplos
El código siguiente muestra cómo implementar este método para devolver un mensaje útil cuando no se admite un comando deploy en un nodo de conexión en el explorador de los datos.
using System;
using System.ComponentModel.Design;
using Microsoft.Win32;
using Microsoft.VisualStudio.Data.Core;
using Microsoft.VisualStudio.Data.Services;
public class MyProviderDynamicSupport2 : IVsDataProviderDynamicSupport
{
private static readonly CommandID DeployCommand =
new CommandID(new Guid("6535F307-2083-4cbb-B2FA-11F2DCD69DAF"), 25);
public bool IsProviderSupported
{
get
{
return true;
}
}
public bool IsSourceSupported(Guid source)
{
return true;
}
public bool IsOperationSupported(
Guid source, CommandID command, object context)
{
if (command == null)
{
throw new ArgumentNullException("command");
}
if (command.Equals(DeployCommand))
{
IVsDataExplorerConnection explorerConnection =
context as IVsDataExplorerConnection;
if (explorerConnection == null)
{
throw new ArgumentException();
}
RegistryKey key = Registry.LocalMachine.OpenSubKey(
@"SOFTWARE\Company\DeployTechnology");
if (key == null)
{
return false;
}
key.Close();
}
return true;
}
public string GetUnsupportedReason(
Guid source, CommandID command, object context)
{
if (command == null)
{
throw new ArgumentNullException("command");
}
if (command.Equals(DeployCommand) &&
!IsOperationSupported(source, command, context))
{
// Note: This string should be localized
return "In order to deploy a database you need to install our deployment technology.";
}
return null;
}
}
Seguridad de .NET Framework
- Plena confianza para el llamador inmediato. Un código de confianza parcial no puede utilizar este miembro. Para obtener más información, vea Utilizar bibliotecas de código que no es de plena confianza.