SqlDependency.Start Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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.