Condividi tramite


SqlDependency.Start Metodo

Definizione

Avvia il listener per la ricezione delle notifiche relative alle modifiche apportate alla dipendenza.

Overload

Start(String)

Avvia il listener per ricevere le notifiche relative alle modifiche subite dalla dipendenza dall'istanza di SQL Server specificata dalla stringa di connessione.

Start(String, String)

Avvia il listener per ricevere le notifiche relative alle modifiche apportate alla dipendenza dall'istanza di SQL Server specificata dalla stringa di connessione utilizzando la coda del Service Broker di SQL Server specificata.

Commenti

Il SqlDependency listener verrà riavviato quando si verifica un errore nella connessione SQL Server.

È possibile effettuare più chiamate al Start metodo, soggette alle restrizioni seguenti:

  • Più chiamate con parametri identici (le stesse credenziali di stringa di connessione e Windows nel thread chiamante) sono valide.

  • Più chiamate con stringhe di connessione diverse sono valide fino a quando:

    • Ogni stringa di connessione specifica un database diverso o

    • Ogni stringa di connessione specifica un utente diverso o

    • Le chiamate provengono da domini applicazione diversi.

È possibile eseguire correttamente il SqlDependency funzionamento per le applicazioni che usano più thread per rappresentare credenziali utente diverse senza dare il ruolo dbo al gruppo, perché diversi utenti possono sottoscrivere e ascoltare (usando SqlCacheDependency o SqlCommand) a una coda di notifica creata da un amministratore. All'avvio del dominio applicazione pertinente, chiamare Start con le credenziali (Windows) di un utente che dispone dell'autorizzazione per inizializzare un servizio/coda (le autorizzazioni CREATE QUEUE e CREATE SERVICE per il database). Assicurarsi che Start venga chiamato una sola volta per AppDomain, in caso contrario viene generata un'eccezione di ambiguità. Il thread utente deve avere l'autorizzazione per sottoscrivere la notifica (l'autorizzazione SUBSCRIBE QUERY NOTIFICATIONS per il database). SqlDependency associa la richiesta di sottoscrizione di un utente non amministratore al servizio o alla coda creata dall'amministratore.

Start(String)

Avvia il listener per ricevere le notifiche relative alle modifiche subite dalla dipendenza dall'istanza di SQL Server specificata dalla stringa di connessione.

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

Parametri

connectionString
String

Stringa di connessione per l'istanza di SQL Server da cui ricevere le notifiche di modifiche.

Restituisce

true se l'inizializzazione del listener ha avuto esito positivo, false se esiste già un listener compatibile.

Eccezioni

Il parametro connectionString è NULL.

Il parametro connectionString è lo stesso utilizzato per una precedente chiamata al metodo, ma gli altri parametri sono diversi.

Il metodo è stato chiamato dall'interno di CLR.

Il chiamante non dispone dell'autorizzazione di sicurezza dall'accesso di codice (CAS, Code Access Security) SqlClientPermission richiesta.

È stata effettuata una chiamata successiva al metodo con un parametro connectionString equivalente, ma con un utente diverso, o con un utente che non utilizza lo stesso schema per impostazione predefinita.

Anche qualsiasi eccezione SqlClient sottostante.

Commenti

Questo metodo avvia il listener per AppDomain la ricezione di notifiche di dipendenza dall'istanza di SQL Server specificata dal connectionString parametro. Questo metodo può essere chiamato più volte con stringhe di connessione diverse per più server.

Per altre osservazioni, vedere Start.

Vedi anche

Si applica a

Start(String, String)

Avvia il listener per ricevere le notifiche relative alle modifiche apportate alla dipendenza dall'istanza di SQL Server specificata dalla stringa di connessione utilizzando la coda del Service Broker di SQL Server specificata.

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

Parametri

connectionString
String

Stringa di connessione per l'istanza di SQL Server da cui ricevere le notifiche di modifiche.

queue
String

Coda del Service Broker di SQL Server da utilizzare. Se null, viene utilizzata la coda predefinita.

Restituisce

true se l'inizializzazione del listener ha avuto esito positivo, false se esiste già un listener compatibile.

Eccezioni

Il parametro connectionString è NULL.

Il parametro connectionString è lo stesso utilizzato per una precedente chiamata al metodo, ma gli altri parametri sono diversi.

Il metodo è stato chiamato dall'interno di CLR.

Il chiamante non dispone dell'autorizzazione di sicurezza dall'accesso di codice (CAS, Code Access Security) SqlClientPermission richiesta.

È stata effettuata una chiamata successiva al metodo con un parametro connectionString equivalente, ma con un utente diverso, o con un utente che non utilizza lo stesso schema per impostazione predefinita.

Anche qualsiasi eccezione SqlClient sottostante.

Commenti

Questo metodo avvia il listener per AppDomain la ricezione di notifiche di dipendenza dall'istanza di SQL Server specificata dal connectionString parametro. Questo metodo può essere chiamato più volte con stringhe di connessione diverse per più server.

Se non viene specificato alcun nome della coda, SqlDependency crea una coda temporanea e un servizio nel server utilizzato per l'intero processo, anche se il processo implica più di un AppDomainoggetto . La coda e il servizio vengono rimossi automaticamente all'arresto dell'applicazione.

Per altre osservazioni, vedere Start.

Vedi anche

Si applica a