Comparteix a través de


SqlDependency.Start Método

Definición

Inicia el agente de escucha para recibir notificaciones de cambio de dependencia.

Sobrecargas

Start(String)

Inicia el agente de escucha para recibir notificaciones de cambio de dependencia desde la instancia de SQL Server que especifique la cadena de conexión.

Start(String, String)

Inicia el agente de escucha para recibir notificaciones de cambio de dependencia desde la instancia de SQL Server que especifique la cadena de conexión utilizando la cola de SQL Server Service Broker indicada.

Comentarios

El SqlDependency agente de escucha se reiniciará cuando se produzca un error en la conexión SQL Server.

Se pueden realizar varias llamadas al Start método, sujetas a las siguientes restricciones:

  • Varias llamadas con parámetros idénticos (las mismas credenciales de Cadena de conexión y Windows en el subproceso de llamada) son válidas.

  • Varias llamadas con cadenas de conexión diferentes son válidas siempre y cuando:

    • Cada cadena de conexión especifica una base de datos diferente o

    • Cada cadena de conexión especifica un usuario diferente o

    • Las llamadas proceden de dominios de aplicación diferentes.

Puede hacer que funcione SqlDependency correctamente para las aplicaciones que usan varios subprocesos para representar credenciales de usuario diferentes sin dar el rol dbo al grupo, ya que los distintos usuarios pueden suscribirse y escuchar (mediante SqlCacheDependency o SqlCommand) a una cola de notificación creada por un administrador. Cuando se inicie el dominio de aplicación correspondiente, llame a Start with the (Windows) credentials of a user that has permission to initialize a service/queue (los permisos CREATE QUEUE y CREATE SERVICE para la base de datos). Asegúrese de que solo se llama a Start una vez por AppDomain; de lo contrario, se genera una excepción de ambigüedad. El subproceso de usuario debe tener permiso para suscribirse a la notificación (el permiso SUBSCRIBE QUERY NOTIFICATIONS para la base de datos). SqlDependency asociará la solicitud de suscripción de un usuario que no sea administrador al servicio o cola creado por el administrador.

Start(String)

Inicia el agente de escucha para recibir notificaciones de cambio de dependencia desde la instancia de SQL Server que especifique la cadena de conexión.

public:
 static bool Start(System::String ^ connectionString);
public static bool Start (string connectionString);
static member Start : string -> bool
Public Shared Function Start (connectionString As String) As Boolean

Parámetros

connectionString
String

Cadena de conexión para la instancia de SQL Server desde la que se van a obtener las notificaciones de cambio.

Devoluciones

true si el agente de escucha se ha inicializado correctamente, false si ya existe un agente de escucha compatible.

Excepciones

El parámetro connectionString es NULL.

El parámetro connectionString es el mismo que el de una llamada anterior a este método, pero los parámetros son diferentes.

Se ha llamado al método desde CLR.

El llamador no tiene el permiso de seguridad de acceso del código (CAS) SqlClientPermission necesario.

Se ha realizado una llamada posterior al método con un parámetro connectionString equivalente pero con distinto usuario, o con un usuario que no tiene el mismo esquema como valor predeterminado.

Además, cualquier excepción SqlClient subyacente.

Comentarios

Este método inicia el agente de escucha para AppDomain recibir notificaciones de dependencia de la instancia de SQL Server especificado por el connectionString parámetro . Se puede llamar a este método más de una vez con cadenas de conexión diferentes para varios servidores.

Para obtener comentarios adicionales, vea Start.

Consulte también

Se aplica a

Start(String, String)

Inicia el agente de escucha para recibir notificaciones de cambio de dependencia desde la instancia de SQL Server que especifique la cadena de conexión utilizando la cola de SQL Server Service Broker indicada.

public:
 static bool Start(System::String ^ connectionString, System::String ^ queue);
public static bool Start (string connectionString, string queue);
static member Start : string * string -> bool
Public Shared Function Start (connectionString As String, queue As String) As Boolean

Parámetros

connectionString
String

Cadena de conexión para la instancia de SQL Server desde la que se van a obtener las notificaciones de cambio.

queue
String

Cola de SQL Server Service Broker existente que se va a utilizar. Si es null, se utiliza la cola predeterminada.

Devoluciones

true si el agente de escucha se ha inicializado correctamente, false si ya existe un agente de escucha compatible.

Excepciones

El parámetro connectionString es NULL.

El parámetro connectionString es el mismo que el de una llamada anterior a este método, pero los parámetros son diferentes.

Se ha llamado al método desde CLR.

El llamador no tiene el permiso de seguridad de acceso del código (CAS) SqlClientPermission necesario.

Se ha realizado una llamada posterior al método con un parámetro connectionString equivalente pero con distinto usuario, o con un usuario que no tiene el mismo esquema como valor predeterminado.

Además, cualquier excepción SqlClient subyacente.

Comentarios

Este método inicia el agente de escucha para AppDomain recibir notificaciones de dependencia de la instancia de SQL Server especificado por el connectionString parámetro . Se puede llamar a este método más de una vez con cadenas de conexión diferentes para varios servidores.

Si no se especifica ningún nombre de cola, SqlDependency crea una cola temporal y un servicio en el servidor que se usa para todo el proceso, incluso si el proceso implica más de una AppDomain. La cola y el servicio se quitan automáticamente al cerrar la aplicación.

Para obtener comentarios adicionales, vea Start.

Consulte también

Se aplica a