TransSynchronizationAgent Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt die Funktionalität des Replikationsverteilungs-Agents bereit.
public ref class TransSynchronizationAgent : MarshalByRefObject, IDisposable, Microsoft::SqlServer::Replication::ITransSynchronizationAgent
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)]
[System.Runtime.InteropServices.ComSourceInterfaces(typeof(Microsoft.SqlServer.Replication.IComStatusEvent))]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Runtime.InteropServices.Guid("adeda98a-bdfc-4029-b6fb-991d6b468395")]
public class TransSynchronizationAgent : MarshalByRefObject, IDisposable, Microsoft.SqlServer.Replication.ITransSynchronizationAgent
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.AutoDispatch)>]
[<System.Runtime.InteropServices.ComSourceInterfaces(typeof(Microsoft.SqlServer.Replication.IComStatusEvent))>]
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Runtime.InteropServices.Guid("adeda98a-bdfc-4029-b6fb-991d6b468395")>]
type TransSynchronizationAgent = class
inherit MarshalByRefObject
interface IDisposable
interface ITransSynchronizationAgent
Public Class TransSynchronizationAgent
Inherits MarshalByRefObject
Implements IDisposable, ITransSynchronizationAgent
- Vererbung
-
TransSynchronizationAgent
- Attribute
- Implementiert
Beispiele
Im folgenden Beispiel wird die Synchronize Methode für die Instanz der Klasse aufgerufen, auf die von der TransSynchronizationAgentSynchronizationAgent Eigenschaft zugegriffen wird, um das Pushabonnement zu synchronisieren.
// Define the server, publication, and database names.
string subscriberName = subscriberInstance;
string publisherName = publisherInstance;
string publicationName = "AdvWorksProductTran";
string subscriptionDbName = "AdventureWorks2012Replica";
string publicationDbName = "AdventureWorks2012";
// Create a connection to the Publisher.
ServerConnection conn = new ServerConnection(publisherName);
TransSubscription subscription;
try
{
// Connect to the Publisher.
conn.Connect();
// Define the push subscription.
subscription = new TransSubscription();
subscription.ConnectionContext = conn;
subscription.DatabaseName = publicationDbName;
subscription.PublicationName = publicationName;
subscription.SubscriptionDBName = subscriptionDbName;
subscription.SubscriberName = subscriberName;
// If the push subscription exists, start the synchronization.
if (subscription.LoadProperties())
{
// Check that we have enough metadata to start the agent.
if (subscription.SubscriberSecurity != null)
{
// Synchronously start the Distribution Agent for the subscription.
subscription.SynchronizationAgent.Synchronize();
}
else
{
throw new ApplicationException("There is insufficent metadata to " +
"synchronize the subscription. Recreate the subscription with " +
"the agent job or supply the required agent properties at run time.");
}
}
else
{
// Do something here if the push subscription does not exist.
throw new ApplicationException(String.Format(
"The subscription to '{0}' does not exist on {1}",
publicationName, subscriberName));
}
}
catch (Exception ex)
{
// Implement appropriate error handling here.
throw new ApplicationException("The subscription could not be synchronized.", ex);
}
finally
{
conn.Disconnect();
}
' Define the server, publication, and database names.
Dim subscriberName As String = subscriberInstance
Dim publisherName As String = publisherInstance
Dim publicationName As String = "AdvWorksProductTran"
Dim subscriptionDbName As String = "AdventureWorks2012Replica"
Dim publicationDbName As String = "AdventureWorks2012"
' Create a connection to the Publisher.
Dim conn As ServerConnection = New ServerConnection(publisherName)
Dim subscription As TransSubscription
Try
' Connect to the Publisher.
conn.Connect()
' Define the push subscription.
subscription = New TransSubscription()
subscription.ConnectionContext = conn
subscription.DatabaseName = publicationDbName
subscription.PublicationName = publicationName
subscription.SubscriptionDBName = subscriptionDbName
subscription.SubscriberName = subscriberName
' If the push subscription exists, start the synchronization.
If subscription.LoadProperties() Then
' Check that we have enough metadata to start the agent.
If Not subscription.SubscriberSecurity Is Nothing Then
' Synchronously start the Distribution Agent for the subscription.
subscription.SynchronizationAgent.Synchronize()
Else
Throw New ApplicationException("There is insufficent metadata to " + _
"synchronize the subscription. Recreate the subscription with " + _
"the agent job or supply the required agent properties at run time.")
End If
Else
' Do something here if the push subscription does not exist.
Throw New ApplicationException(String.Format( _
"The subscription to '{0}' does not exist on {1}", _
publicationName, subscriberName))
End If
Catch ex As Exception
' Implement appropriate error handling here.
Throw New ApplicationException("The subscription could not be synchronized.", ex)
Finally
conn.Disconnect()
End Try
Hinweise
Die TransSynchronizationAgent Klasse unterstützt die Möglichkeit, Abonnements programmgesteuert mit Transaktions- oder Snapshotpublikationen zu synchronisieren.
Konstruktoren
TransSynchronizationAgent() |
Erstellt eine Instanz der TransSynchronizationAgent-Klasse. |
Eigenschaften
AltSnapshotFolder |
Ruft den alternativen Momentaufnahmeordner für das Abonnement ab oder legt diesen fest. |
ComErrorCollection |
Ruft eine Auflistung der Fehler ab, die vom Replikations-Agent generiert wurden. |
Distributor |
Ruft den Namen der Instanz von Microsoft SQL Server ab, die als Verteiler für das Abonnement fungiert, oder legt diesen fest. |
DistributorAddress |
Ruft die Netzwerkadresse ab, die verwendet wird, um eine Verbindung mit dem Verteiler herzustellen, wenn die DistributorNetwork-Eigenschaft angegeben wird, oder legt diese fest. |
DistributorEncryptedPassword |
Dient zum Abrufen oder Festlegen des verschlüsselten Kennworts, das beim Herstellen einer Verbindung mit dem Verteiler mithilfe von SQL Server Authentifizierung verwendet wird. |
DistributorLogin |
Ruft den Anmeldenamen ab, der beim Herstellen einer Verbindung mit dem Verteiler mithilfe von SQL Server Authentication verwendet wird, oder legt diesen fest. |
DistributorNetwork |
Ruft den Client Net-Library ab, der beim Herstellen einer Verbindung mit dem Verteiler verwendet wird, oder legt diesen fest. |
DistributorPassword |
Dient zum Abrufen oder Festlegen des Kennworts, das beim Herstellen einer Verbindung mit dem Verteiler mithilfe SQL Server Authentifizierung verwendet wird. |
DistributorSecurityMode |
Ruft den Sicherheitsmodus ab, der beim Herstellen einer Verbindung mit dem Verteiler verwendet wird, oder legt diesen fest. |
DtsPackageFileName |
Ruft den Namen und den Pfad eines Microsoft SQL Server 2000-DTS-Pakets (Data Transformation Services) ab, das verwendet wird, um Befehlsrowsets zu transformieren, bevor sie auf einen Abonnenten angewendet werden, oder legt diese Informationen fest. |
DtsPackagePassword |
Ruft das Besitzerkennwort ab, das für den Zugriff auf das microsoft SQL Server 2000 Data Transformation Services (DTS)-Paket verwendet wird, das von der DtsPackageFileName Eigenschaft angegeben wird. |
FileTransferType |
Ruft ab, wie dem Abonnenten die ersten Momentaufnahmedateien übergeben werden, oder legt die Vorgehensweise fest. |
HostName |
Ruft den verwendeten Hostnamen ab oder legt ihn fest. |
LastUpdatedTime |
Ruft den Zeitstempel der letzten Synchronisierung des Abonnements durch diesen Replikations-Agent ab. |
LoginTimeout |
Ruft die maximale Anzahl von Sekunden ab, die auf das Herstellen von Verbindungen gewartet werden soll, oder legt diese fest. |
MaxDeliveredTransactions |
Ruft die maximale Anzahl von Transaktionen ab, die während einer einzelnen Ausführung des Agents auf den Abonnenten angewendet werden, oder legt diese fest. |
Output |
Ruft den Dateinamen und den Pfad der Agentausgabedatei ab oder legt diese Angaben fest. |
OutputVerboseLevel |
Ruft ab oder legt fest, wie viele Informationen vom Verteilungs-Agent in der Agentausgabedatei protokolliert werden. |
ProfileName |
Ruft den Namen des Profils ab, das vom Agent verwendet wird, oder legt diesen fest. |
Publication |
Ruft den Namen der Veröffentlichung ab oder legt diesen fest. |
Publisher |
Ruft den Namen der Microsoft SQL Server-Instanz ab, die für das Abonnement als Verleger auftritt, oder legt diesen fest. |
PublisherDatabase |
Ruft den Namen der Veröffentlichungsdatenbank ab oder legt ihn fest. |
QueryTimeout |
Ruft die Anzahl der Sekunden ab, die für interne Abfragen zulässig sind, oder legt diese fest. |
SecureDistributorEncryptedPassword |
Ruft das sichere verschlüsselte Kennwort für den Verteiler ab oder legt es fest. |
SecureSubscriberEncryptedPassword |
Dient zum Abrufen oder Festlegen des sicheren verschlüsselten Kennworts für den Abonnenten. |
SkipErrors |
Ruft eine Liste der Fehlernummern ab, die von diesem Agent ausgelassen werden sollen, oder legt diese fest. Die Einträge in der Liste sind durch Doppelpunkte getrennt. |
Subscriber |
Dient zum Abrufen oder Festlegen des Namens der Instanz von Microsoft SQL Server, die der Abonnent ist. |
SubscriberDatabase |
Ruft den Namen der Abonnementdatenbank ab oder legt diesen fest. |
SubscriberDatabasePath |
Ruft den Datenbankpfad für den Abonnenten ab oder legt ihn fest. |
SubscriberDataSourceType |
Dient zum Abrufen oder Festlegen des Datentyps der Datenquelle, die als Abonnent verwendet wird. |
SubscriberEncryptedPassword |
Dient zum Abrufen oder Festlegen des verschlüsselten Kennworts für den Abonnenten. |
SubscriberLogin |
Dient zum Abrufen oder Festlegen des Anmeldenamens, der beim Herstellen einer Verbindung mit dem Abonnenten mithilfe von SQL Server Authentifizierung verwendet wird. |
SubscriberPassword |
Dient zum Abrufen oder Festlegen des Kennworts, das beim Herstellen einer Verbindung mit dem Abonnenten mithilfe von SQL Server Authentifizierung verwendet wird. |
SubscriberSecurityMode |
Ruft den Sicherheitsmodus ab, der beim Herstellen einer Verbindung mit dem Herausgeber verwendet wird, oder legt diesen fest. |
SubscriptionType |
Ruft ab oder legt fest, ob das Abonnement ein Push- oder Pullabonnement ist. |
UndeliveredCommands |
Ruft die Anzahl der nicht abgeschlossenen Befehle ab. |
UndeliveredTransactions |
Ruft die Anzahl der nicht abgeschlossenen Transaktionen ab. |
UseInProcLoader |
Ruft einen Wert ab, der angibt, ob beim Anwenden von Momentaufnahmedateien beim Abonnenten der BULK INSERT-Befehl verwendet werden soll, oder legt diesen Wert fest. |
WorkingDirectory |
Ruft das Arbeitsverzeichnis ab, von dem aus bei Verwendung von FTP (File Transfer Protocol) auf Momentaufnahmedateien zugegriffen wird, oder legt dieses fest. |
Methoden
Abort() |
Bricht den TransSynchronizationAgent-Vorgang ab. |
Dispose() |
Gibt alle von der aktuellen Instanz der TransSynchronizationAgent-Klasse verwendeten Ressourcen frei. |
Dispose(Boolean) |
Gibt alle von der TransSynchronizationAgent-Klasse verwendeten Ressourcen frei. |
Finalize() |
Schließt TransSynchronizationAgent ab. |
IsSnapshotRequired() |
Stellt eine Verbindung mit dem Verteiler und dem Abonnenten her, um zu bestimmen, ob während der nächsten Agentsynchronisierung eine neue Momentaufnahme angewendet wird. |
Synchronize() |
Startet den Verteilungs-Agent, um das Abonnement zu synchronisieren. |
Ereignisse
ComStatus |
Tritt auf, wenn der Verteilungs-Agent Informationen zum Kommunikationsstatus der Synchronisierung zurückgibt. |
Status |
Tritt auf, wenn der Verteilungs-Agent Synchronisierungsstatusinformationen zurückgibt. |
Gilt für:
Threadsicherheit
Die TransSynchronizationAgent Klasse unterstützt keine Multithread-Wohnungen. Sie können eine Singlethread-Wohnung angeben, indem Sie das [STAThread]
Attribut für die Methode deklarieren, die der Haupteintragspunkt für die Anwendung ist. Dies ist die Standardeinstellung für Microsoft Windows-basierte Anwendungen, die mithilfe von Microsoft Visual Studio erstellt werden.