SqlDependency.Start Methode

Definition

Startet den Listener zum Empfangen von Abhängigkeitsänderungsbenachrichtigungen.Starts the listener for receiving dependency change notifications.

Überlädt

Start(String)

Startet den Listener zum Empfangen von Abhängigkeitsänderungsbenachrichtigungen aus der Instanz von SQL Server, die von der Verbindungszeichenfolge angegeben wird.Starts the listener for receiving dependency change notifications from the instance of SQL Server specified by the connection string.

Start(String, String)

Startet den Listener zum Empfangen von Abhängigkeitsänderungsbenachrichtigungen mithilfe der angegebenen SQL Server Service Broker-Warteschlange aus der Instanz von SQL Server, die von der Verbindungszeichenfolge angegeben ist.Starts the listener for receiving dependency change notifications from the instance of SQL Server specified by the connection string using the specified SQL Server Service Broker queue.

Hinweise

Der SqlDependency Listener wird neu gestartet, wenn ein Fehler in der SQL Server Verbindung auftritt.The SqlDependency listener will restart when an error occurs in the SQL Server connection.

Es können mehrere Aufrufe Start der-Methode vorgenommen werden, die den folgenden Einschränkungen unterliegen:Multiple calls to the Start method can be made, subject to the following restrictions:

  • Mehrere Aufrufe mit identischen Parametern (die gleiche Verbindungs Zeichenfolge und Windows-Anmelde Informationen im aufrufenden Thread) sind gültig.Multiple calls with identical parameters (the same connection string and Windows credentials in the calling thread) are valid.

  • Mehrere Aufrufe mit unterschiedlichen Verbindungs Zeichenfolgen sind gültig, solange:Multiple calls with different connection strings are valid as long as:

    • Jede Verbindungs Zeichenfolge gibt eine andere Datenbank an.Each connection string specifies a different database, or

    • Jede Verbindungs Zeichenfolge gibt einen anderen Benutzer an.Each connection string specifies a different user, or

    • Die Aufrufe stammen aus verschiedenen Anwendungs Domänen.The calls come from different application domains.

Sie können die SqlDependency Arbeit für Anwendungen, die mehrere Threads verwenden, ordnungsgemäß ausführen, ohne die dbo-Rolle der Gruppe zu erteilen, da verschiedene Benutzer das abonnieren und lauschen können ( SqlCacheDependency mithilfe SqlCommandvon oder). in eine Benachrichtigungs Warteschlange, die von einem Administrator erstellt wurdeYou can make the SqlDependency work correctly for applications that use multiple threads to represent different user credentials without giving the dbo role to the group, because different users can subscribe and listen (using SqlCacheDependency or SqlCommand) to a notification queue created by an administrator. Wenn die relevante Anwendungsdomäne gestartet wird, rufen Sie mit den (Windows)-Anmelde Informationen eines Benutzers auf, der berechtigt ist, einen Dienst bzw. eine Warteschlange zu initialisieren (die CREATE Queue-und Create Service-Berechtigungen für die Datenbank).When the relevant application domain starts, call Start with the (Windows) credentials of a user that has permission to initialize a service/queue (the CREATE QUEUE and CREATE SERVICE permissions for the database). Stellen Sie sicher, dass Start nur einmal pro AppDomain aufgerufen wird. andernfalls wird eine mehrdeutigkeits Ausnahme ausgelöst.Ensure that Start is only called once per AppDomain, otherwise an ambiguity exception is raised. Der Benutzer Thread muss über die Berechtigung zum Abonnieren der Benachrichtigung verfügen (die Berechtigung zum Abonnieren von Abfrage Benachrichtigungen für die Datenbank).The user thread must have permission to subscribe to the notification (the SUBSCRIBE QUERY NOTIFICATIONS permission for the database). SqlDependencydie Abonnement Anforderung eines Benutzers, der kein Administrator ist, wird von dem vom Administrator erstellten Dienst bzw. der Warteschlange zugeordnet.SqlDependency will associate the subscription request of a non-administrator user to the service/queue created by the administrator.

Start(String)

Startet den Listener zum Empfangen von Abhängigkeitsänderungsbenachrichtigungen aus der Instanz von SQL Server, die von der Verbindungszeichenfolge angegeben wird.Starts the listener for receiving dependency change notifications from the instance of SQL Server specified by the connection string.

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

Parameter

connectionString
String

Die Verbindungszeichenfolge für die Instanz von SQL Server, aus der Änderungsbenachrichtigungen abgerufen werden.The connection string for the instance of SQL Server from which to obtain change notifications.

Gibt zurück

true, wenn der Listener erfolgreich initialisiert wurde; false, wenn bereits ein kompatibler Listener vorhanden ist.true if the listener initialized successfully; false if a compatible listener already exists.

Ausnahmen

Der connectionString-Parameter ist NULL.The connectionString parameter is NULL.

Der connectionString-Parameter ist der gleiche wie in einem vorherigen Aufruf dieser Methode, die Parameter sind jedoch andere.The connectionString parameter is the same as a previous call to this method, but the parameters are different.

Die Methode wurde aus der CLR aufgerufen.The method was called from within the CLR.

Der Aufrufer verfügt nicht über die erforderliche SqlClientPermission-Berechtigung für die Codezugriffssicherheit.The caller does not have the required SqlClientPermission code access security (CAS) permission.

Es erfolgt ein erneuter Aufruf der Methode mit einem äquivalenten connectionString-Parameter, entweder mit einem anderen Benutzer oder einem Benutzer mit einem anderen Schema.A subsequent call to the method has been made with an equivalent connectionString parameter with a different user, or a user that does not default to the same schema.

Außerdem alle zugrunde liegenden SqlClient-Ausnahmen.Also, any underlying SqlClient exceptions.

Hinweise

Diese Methode startet den Listener für die AppDomain zum Empfangen von Abhängigkeits Benachrichtigungen von der Instanz von, die connectionString vom-Parameter angegeben SQL Server.This method starts the listener for the AppDomain for receiving dependency notifications from the instance of SQL Server specified by the connectionString parameter. Diese Methode kann mehrmals mit verschiedenen Verbindungs Zeichenfolgen für mehrere Server aufgerufen werden.This method may be called more than once with different connection strings for multiple servers.

Weitere Hinweise finden StartSie unter.For additional remarks, see Start.

Siehe auch

Start(String, String)

Startet den Listener zum Empfangen von Abhängigkeitsänderungsbenachrichtigungen mithilfe der angegebenen SQL Server Service Broker-Warteschlange aus der Instanz von SQL Server, die von der Verbindungszeichenfolge angegeben ist.Starts the listener for receiving dependency change notifications from the instance of SQL Server specified by the connection string using the specified SQL Server Service Broker queue.

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

Parameter

connectionString
String

Die Verbindungszeichenfolge für die Instanz von SQL Server, aus der Änderungsbenachrichtigungen abgerufen werden.The connection string for the instance of SQL Server from which to obtain change notifications.

queue
String

Eine vorhandene SQL Server Service Broker-Warteschlange, die verwendet werden soll.An existing SQL Server Service Broker queue to be used. Wenn null, wird standardmäßig die Warteschlange verwendet.If null, the default queue is used.

Gibt zurück

true, wenn der Listener erfolgreich initialisiert wurde; false, wenn bereits ein kompatibler Listener vorhanden ist.true if the listener initialized successfully; false if a compatible listener already exists.

Ausnahmen

Der connectionString-Parameter ist NULL.The connectionString parameter is NULL.

Der connectionString-Parameter ist der gleiche wie in einem vorherigen Aufruf dieser Methode, die Parameter sind jedoch andere.The connectionString parameter is the same as a previous call to this method, but the parameters are different.

Die Methode wurde aus der CLR aufgerufen.The method was called from within the CLR.

Der Aufrufer verfügt nicht über die erforderliche SqlClientPermission-Berechtigung für die Codezugriffssicherheit.The caller does not have the required SqlClientPermission code access security (CAS) permission.

Es erfolgt ein erneuter Aufruf der Methode mit einem äquivalenten connectionString-Parameter, entweder mit einem anderen Benutzer oder einem Benutzer mit einem anderen Schema.A subsequent call to the method has been made with an equivalent connectionString parameter but a different user, or a user that does not default to the same schema.

Außerdem alle zugrunde liegenden SqlClient-Ausnahmen.Also, any underlying SqlClient exceptions.

Hinweise

Diese Methode startet den Listener für die AppDomain zum Empfangen von Abhängigkeits Benachrichtigungen von der Instanz von, die connectionString vom-Parameter angegeben SQL Server.This method starts the listener for the AppDomain for receiving dependency notifications from the instance of SQL Server specified by the connectionString parameter. Diese Methode kann mehrmals mit verschiedenen Verbindungs Zeichenfolgen für mehrere Server aufgerufen werden.This method may be called more than once with different connection strings for multiple servers.

Wenn kein Warteschlangen Name angegeben ist SqlDependency , erstellt eine temporäre Warteschlange und einen Dienst auf dem Server, der für den gesamten Prozess verwendet wird, auch wenn der Prozess AppDomainmehr als einen Prozess umfasst.If no queue name is specified, SqlDependency creates a temporary queue and service in the server that is used for the entire process, even if the process involves more than one AppDomain. Die Warteschlange und der Dienst werden automatisch beim Herunterfahren der Anwendung entfernt.The queue and service are automatically removed upon application shutdown.

Weitere Hinweise finden StartSie unter.For additional remarks, see Start.

Siehe auch

Gilt für: