Linguaggio

TransSubscription Costruttori

Definizione

Crea una nuova istanza della classe TransSubscription.

Overload

Nome Descrizione
TransSubscription()

Crea una nuova istanza della classe TransSubscription.

TransSubscription(String, String, String, String, ServerConnection)

Crea una nuova istanza della TransSubscription classe con la pubblicazione, il database, il database Subscriber e il database degli abbonati specificati, e con la connessione specificata all'istanza di Microsoft SQL Server.

Commenti

Testo aggiornato:17 luglio 2006

La tabella seguente mostra i valori predefiniti delle proprietà per una nuova istanza di TransSubscription. Qualsiasi proprietà non esplicitamente enumerata in questa tabella viene inizializzata in un null valore.

Proprietà Valore predefinito
AgentOffload false
AgentSchedule Un valore di 99991231 per ActiveEndDate

Un valore di 235959 per ActiveEndTime

Un valore di 0 per ActiveStartDate

Un valore di 0 per ActiveStartTime

Un valore di 1 per FrequencyInterval

Un valore di 0 per FrequencyRecurrenceFactor

Un valore di First per FrequencyRelativeInterval

Un valore di Minute per FrequencySubDay

Un valore di 5 per FrequencySubDayInterval

Un valore di Continuously per FrequencyType
CachePropertyChanges false
CreateSyncAgentByDefault true
EnabledForSynchronizationManager false
FullSubscription true
IsExistingObject false
LoopBackDetection true
Status Un valore di Inactive per SubscriptionState
SubscriberDatasourceType Un valore di SqlServer per SubscriberType
SubscriberSecurity Un valore di true per WindowsAuthentication
SubscriberType Un valore di ReadOnly per TransSubscriberType
SubscriptionType Un valore di Push per SubscriptionOption
SynchronizationAgent Un esempio della TransSynchronizationAgent pubblicazione associato all'abbonamento che crei.
SyncType Un valore di Automatic per SubscriptionSyncType

TransSubscription()

Crea una nuova istanza della classe TransSubscription.

public:
 TransSubscription();
public TransSubscription();
Public Sub New ()

Esempio

           // Define the Publisher, publication, and databases.
           string publicationName = "AdvWorksProductTran";
           string publisherName = publisherInstance;
           string subscriberName = subscriberInstance;
           string subscriptionDbName = "AdventureWorks2012Replica";
           string publicationDbName = "AdventureWorks2012";

           //Create a connection to the Publisher.
           ServerConnection conn = new ServerConnection(publisherName);

           // Create the objects that we need.
           TransPublication publication;
           TransSubscription subscription;

           try
           {
               // Connect to the Publisher.
               conn.Connect();

               // Ensure that the publication exists and that 
               // it supports push subscriptions.
               publication = new TransPublication();
               publication.Name = publicationName;
               publication.DatabaseName = publicationDbName;
               publication.ConnectionContext = conn;

               if (publication.IsExistingObject)
               {
                   if ((publication.Attributes & PublicationAttributes.AllowPush) == 0)
                   {
                       publication.Attributes |= PublicationAttributes.AllowPush;
                   }

                   // Define the push subscription.
                   subscription = new TransSubscription();
                   subscription.ConnectionContext = conn;
                   subscription.SubscriberName = subscriberName;
                   subscription.PublicationName = publicationName;
                   subscription.DatabaseName = publicationDbName;
                   subscription.SubscriptionDBName = subscriptionDbName;

                   // Specify the Windows login credentials for the Distribution Agent job.
                   subscription.SynchronizationAgentProcessSecurity.Login = winLogin;
                   subscription.SynchronizationAgentProcessSecurity.Password = winPassword;

                   // By default, subscriptions to transactional publications are synchronized 
                   // continuously, but in this case we only want to synchronize on demand.
                   subscription.AgentSchedule.FrequencyType = ScheduleFrequencyType.OnDemand;

                   // Create the push subscription.
                   subscription.Create();
               }
               else
               {
                   // Do something here if the publication does not exist.
                   throw new ApplicationException(String.Format(
                       "The publication '{0}' does not exist on {1}.",
                       publicationName, publisherName));
               }
           }
           catch (Exception ex)
           {
               // Implement the appropriate error handling here.
               throw new ApplicationException(String.Format(
                   "The subscription to {0} could not be created.", publicationName), ex);
           }
           finally
           {
               conn.Disconnect();
           }
' Define the Publisher, publication, and databases.
Dim publicationName As String = "AdvWorksProductTran"
Dim publisherName As String = publisherInstance
Dim subscriberName As String = subscriberInstance
Dim subscriptionDbName As String = "AdventureWorks2012Replica"
Dim publicationDbName As String = "AdventureWorks2012"

'Create a connection to the Publisher.
Dim conn As ServerConnection = New ServerConnection(publisherName)

' Create the objects that we need.
Dim publication As TransPublication
Dim subscription As TransSubscription

Try
    ' Connect to the Publisher.
    conn.Connect()

    ' Ensure that the publication exists and that 
    ' it supports push subscriptions.
    publication = New TransPublication()
    publication.Name = publicationName
    publication.DatabaseName = publicationDbName
    publication.ConnectionContext = conn

    If publication.IsExistingObject Then
        If (publication.Attributes And PublicationAttributes.AllowPush) = 0 Then
            publication.Attributes = publication.Attributes _
            Or PublicationAttributes.AllowPush
        End If

        ' Define the push subscription.
        subscription = New TransSubscription()
        subscription.ConnectionContext = conn
        subscription.SubscriberName = subscriberName
        subscription.PublicationName = publicationName
        subscription.DatabaseName = publicationDbName
        subscription.SubscriptionDBName = subscriptionDbName

        ' Specify the Windows login credentials for the Distribution Agent job.
        subscription.SynchronizationAgentProcessSecurity.Login = winLogin
        subscription.SynchronizationAgentProcessSecurity.Password = winPassword

        ' By default, subscriptions to transactional publications are synchronized 
        ' continuously, but in this case we only want to synchronize on demand.
        subscription.AgentSchedule.FrequencyType = ScheduleFrequencyType.OnDemand

        ' Create the push subscription.
        subscription.Create()
    Else
        ' Do something here if the publication does not exist.
        Throw New ApplicationException(String.Format( _
         "The publication '{0}' does not exist on {1}.", _
         publicationName, publisherName))
    End If

Catch ex As Exception
    ' Implement the appropriate error handling here.
    Throw New ApplicationException(String.Format( _
        "The subscription to {0} could not be created.", publicationName), ex)
Finally
    conn.Disconnect()
End Try

Commenti

Il costruttore predefinito inizializza qualsiasi campo ai valori predefiniti.

Vedi anche

Si applica a

TransSubscription(String, String, String, String, ServerConnection)

Crea una nuova istanza della TransSubscription classe con la pubblicazione, il database, il database Subscriber e il database degli abbonati specificati, e con la connessione specificata all'istanza di Microsoft SQL Server.

public:
 TransSubscription(System::String ^ publicationName, System::String ^ databaseName, System::String ^ subscriberName, System::String ^ subscriptionDBName, Microsoft::SqlServer::Management::Common::ServerConnection ^ connectionContext);
public TransSubscription(string publicationName, string databaseName, string subscriberName, string subscriptionDBName, Microsoft.SqlServer.Management.Common.ServerConnection connectionContext);
new Microsoft.SqlServer.Replication.TransSubscription : string * string * string * string * Microsoft.SqlServer.Management.Common.ServerConnection -> Microsoft.SqlServer.Replication.TransSubscription
Public Sub New (publicationName As String, databaseName As String, subscriberName As String, subscriptionDBName As String, connectionContext As ServerConnection)

Parametri

publicationName
String

Un String valore che specifica il nome della pubblicazione transazionale o istantanea.

databaseName
String

Un String valore che specifica il nome del database che contiene la pubblicazione, o il nome del database di distribuzione per un non-SQL Server Publisher.

subscriberName
String

Un String valore che specifica il nome dell'abbonato.

subscriptionDBName
String

Un String valore che specifica il nome del database in abbonamento.

connectionContext
ServerConnection

Un ServerConnection oggetto che rappresenta una connessione con il Publisher o con il Distributore per un abbonamento a un non-SQL Server Publisher.

Si applica a