Langage

MergeSubscription Constructeurs

Définition

Crée une instance de la classe MergeSubscription.

Surcharges

Nom Description
MergeSubscription()

Crée une instance de la classe MergeSubscription.

MergeSubscription(String, String, String, String, ServerConnection)

Crée une nouvelle instance de la MergeSubscription classe avec la connexion spécifiée au Publisher et les propriétés qui définissent de manière unique l’abonnement.

Remarques

Texte mis à jour :17 juillet 2006

Le tableau suivant montre les valeurs de propriété par défaut pour une nouvelle instance de MergeSubscription. Toutes les propriétés qui ne sont pas explicitement énumérées dans ce tableau sont initialisées en une null valeur.

Propriété Valeur par défaut
AgentOffload false
AgentSchedule Une valeur de 99991231 pour ActiveEndDate

Une valeur de 235959 pour ActiveEndTime

Une valeur de 0 pour ActiveStartDate

Une valeur de 0 pour ActiveStartTime

Une valeur de 1 pour FrequencyInterval

Une valeur de 0 pour FrequencyRecurrenceFactor

Une valeur de First pour FrequencyRelativeInterval

Une valeur de Hour pour FrequencySubDay

Une valeur de 1 pour FrequencySubDayInterval

Une valeur de Daily pour FrequencyType
CachePropertyChanges false
CreateSyncAgentByDefault true
EnabledForSynchronizationManager false
IsExistingObject false
Priority 0
PublisherSecurity Une valeur de true pour WindowsAuthentication
Status Une valeur de Inactive pour SubscriptionState
SubscriberSecurity Une valeur de true pour WindowsAuthentication
SubscriberType Une valeur de Local pour MergeSubscriberType
SubscriptionType Une valeur de Push pour SubscriptionOption
SynchronizationAgent Un exemple de MergeSynchronizationAgent la publication associée à l’abonnement que vous créez.
SyncType Une valeur de Automatic pour SubscriptionSyncType
UseInteractiveResolver false

MergeSubscription()

Crée une instance de la classe MergeSubscription.

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

Exemples

// Define the Publisher, publication, and databases.
string publicationName = "AdvWorksSalesOrdersMerge";
string publisherName = publisherInstance;
string subscriberName = subscriberInstance;
string subscriptionDbName = "AdventureWorks2012Replica";
string publicationDbName = "AdventureWorks2012";
string hostname = @"adventure-works\garrett1";

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

// Create the objects that we need.
MergePublication publication;
MergeSubscription subscription;

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

    // Ensure that the publication exists and that 
    // it supports push subscriptions.
    publication = new MergePublication();
    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 MergeSubscription();
        subscription.ConnectionContext = conn;
        subscription.SubscriberName = subscriberName;
        subscription.PublicationName = publicationName;
        subscription.DatabaseName = publicationDbName;
        subscription.SubscriptionDBName = subscriptionDbName;
        subscription.HostName = hostname;

        // Set a schedule to synchronize the subscription every 2 hours
        // during weekdays from 6am to 10pm.
        subscription.AgentSchedule.FrequencyType = ScheduleFrequencyType.Weekly;
        subscription.AgentSchedule.FrequencyInterval = Convert.ToInt32(0x003E);
        subscription.AgentSchedule.FrequencyRecurrenceFactor = 1;
        subscription.AgentSchedule.FrequencySubDay = ScheduleFrequencySubDay.Hour;
        subscription.AgentSchedule.FrequencySubDayInterval = 2;
        subscription.AgentSchedule.ActiveStartDate = 20051108;
        subscription.AgentSchedule.ActiveEndDate = 20071231;
        subscription.AgentSchedule.ActiveStartTime = 060000;
        subscription.AgentSchedule.ActiveEndTime = 100000;

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

        // 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 = "AdvWorksSalesOrdersMerge"
Dim publisherName As String = publisherInstance
Dim subscriberName As String = subscriberInstance
Dim subscriptionDbName As String = "AdventureWorks2012Replica"
Dim publicationDbName As String = "AdventureWorks2012"
Dim hostname As String = "adventure-works\garrett1"

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

' Create the objects that we need.
Dim publication As MergePublication
Dim subscription As MergeSubscription

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

    ' Ensure that the publication exists and that 
    ' it supports push subscriptions.
    publication = New MergePublication()
    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 MergeSubscription()
        subscription.ConnectionContext = conn
        subscription.SubscriberName = subscriberName
        subscription.PublicationName = publicationName
        subscription.DatabaseName = publicationDbName
        subscription.SubscriptionDBName = subscriptionDbName
        subscription.HostName = hostname

        ' Set a schedule to synchronize the subscription every 2 hours
        ' during weekdays from 6am to 10pm.
        subscription.AgentSchedule.FrequencyType = ScheduleFrequencyType.Weekly
        subscription.AgentSchedule.FrequencyInterval = Convert.ToInt32("0x003E", 16)
        subscription.AgentSchedule.FrequencyRecurrenceFactor = 1
        subscription.AgentSchedule.FrequencySubDay = ScheduleFrequencySubDay.Hour
        subscription.AgentSchedule.FrequencySubDayInterval = 2
        subscription.AgentSchedule.ActiveStartDate = 20051108
        subscription.AgentSchedule.ActiveEndDate = 20071231
        subscription.AgentSchedule.ActiveStartTime = 60000
        subscription.AgentSchedule.ActiveEndTime = 100000

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

        ' 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

Remarques

Le constructeur par défaut initialise tous les champs à leurs valeurs par défaut.

Voir aussi

S’applique à

MergeSubscription(String, String, String, String, ServerConnection)

Crée une nouvelle instance de la MergeSubscription classe avec la connexion spécifiée au Publisher et les propriétés qui définissent de manière unique l’abonnement.

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

Paramètres

publicationName
String

Une String valeur qui spécifie le nom de la publication de fusion.

databaseName
String

Une valeur qui spécifie String le nom de la base de données contenant la publication.

subscriberName
String

Une String valeur qui spécifie le nom de l’abonné abonné à la publication.

subscriptionDBName
String

Une String valeur qui spécifie le nom de la base de données par abonnement.

connectionContext
ServerConnection

Une valeur d’objet ServerConnection qui spécifie la connexion avec le Publisher.

S’applique à