Aracılığıyla paylaş


MergePartition Sınıfı

Olan parametreli satır filtresi birleştirme yayın için bir abonenin bölüm hakkında bilgi gösterir.

Devralma Hiyerarşisi

System.Object
  Microsoft.SqlServer.Replication.MergePartition

Ad Alanı:  Microsoft.SqlServer.Replication
Derleme:  Microsoft.SqlServer.Rmo (Microsoft.SqlServer.Rmo içinde.dll)

Sözdizimi

'Bildirim
Public NotInheritable Class MergePartition
'Kullanım
Dim instance As MergePartition
public sealed class MergePartition
public ref class MergePartition sealed
[<SealedAttribute>]
type MergePartition =  class end
public final class MergePartition

MergePartition türü aşağıdaki üyeleri açıklar.

Oluşturucular

  Ad Açıklama
Ortak yöntem MergePartition Oluşturur Yeni bir örnek , MergePartition WalkTree

Üst

Özellikler

  Ad Açıklama
Ortak özellik CurrentSnapshotDateTime Alır veya ayarlar tarih ve saat bölümü veri anlık görüntü oluşturulduğunda.
Ortak özellik DynamicFilterHostName İçin sağlanan değeri alır veya ayarlar host_name (Transact-SQL) işlev, parametreli satır filtresi kullanarak tanımlı veri anlık görüntü oluşturmak içinbu işlev.
Ortak özellik DynamicFilterLogin İçin sağlanan değeri alır veya ayarlar suser_sname (Transact-SQL) işlev, parametreli satır filtresi kullanarak tanımlı veri anlık görüntü oluşturmak içinbu işlev.
Ortak özellik DynamicSnapshotJobId Gets or sets the Microsoft SQL Server Agent job ID, in hexadecimal format, which generates the filtered snapshot for the Subscriber.
Ortak özellik DynamicSnapshotLocation Alır veya bölüm için oluşturulan süzülmüş anlık görüntü saklamak için kullanılan işletim sistemi klasörü ayarlar.
Ortak özellik PartitionId Değeri alır veya benzersiz olarak tanımlayan bölüm Kimliğini ayarlar.
Ortak özellik UserData Alır veya ayarlar için bu örnek özel verileri iliştirmek sağlayan nesne MergePartition.

Üst

Yöntemler

  Ad Açıklama
Ortak yöntem Equals (Object öğesinden devralınmıştır.)
Korumalı yöntem Finalize (Object öğesinden devralınmıştır.)
Ortak yöntem GetHashCode (Object öğesinden devralınmıştır.)
Ortak yöntem GetType (Object öğesinden devralınmıştır.)
Korumalı yöntem MemberwiseClone (Object öğesinden devralınmıştır.)
Ortak yöntem ToString (Object öğesinden devralınmıştır.)

Üst

Açıklamalar

Bu ad, sınıf veya üye yalnızca desteklenen sürüm 2.0 Microsoft .net Framework.

İş Parçacığı Güvenliği

Herhangi bir ortak statik (Shared , Microsoft Visual Basic) bu tür üyeler birden çok iş parçacığı işlemleri. için güvenliHerhangi bir örnek üyenin iş parçacığı için güvenli olduğu garanti edilmemiştir.

Örnekler

          // Define the server, database, and publication names
            string publisherName = publisherInstance;
            string publicationName = "AdvWorksSalesOrdersMerge";
            string publicationDbName = "AdventureWorks2008R2";
            string distributorName = publisherInstance;

            MergePublication publication;
            MergePartition partition;
            MergeDynamicSnapshotJob snapshotAgentJob;
            ReplicationAgentSchedule schedule;
            
            // Create a connection to the Publisher.
            ServerConnection publisherConn = new ServerConnection(publisherName);

            // Create a connection to the Distributor to start the Snapshot Agent.
            ServerConnection distributorConn = new ServerConnection(distributorName);

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

                // Set the required properties for the publication.
                publication = new MergePublication();
                publication.ConnectionContext = publisherConn;
                publication.Name = publicationName;
                publication.DatabaseName = publicationDbName;


                // If we can't get the properties for this merge publication, 
                // then throw an application exception.
                if (publication.LoadProperties() || publication.SnapshotAvailable)
                {
                    // Set a weekly schedule for the filtered data snapshot.
                    schedule = new ReplicationAgentSchedule();
                    schedule.FrequencyType = ScheduleFrequencyType.Weekly;
                    schedule.FrequencyRecurrenceFactor = 1;
                    schedule.FrequencyInterval = Convert.ToInt32(0x001);

                    // Set the value of Hostname that defines the data partition. 
                    partition = new MergePartition();
                    partition.DynamicFilterHostName = hostname;
                    snapshotAgentJob = new MergeDynamicSnapshotJob();
                    snapshotAgentJob.DynamicFilterHostName = hostname;

                    // Create the partition for the publication with the defined schedule.
                    publication.AddMergePartition(partition);
                    publication.AddMergeDynamicSnapshotJob(snapshotAgentJob, schedule);
                }
                else
                {
                    throw new ApplicationException(String.Format(
                        "Settings could not be retrieved for the publication, " +
                        " or the initial snapshot has not been generated. " +
                        "Ensure that the publication {0} exists on {1} and " +
                        "that the Snapshot Agent has run successfully.",
                        publicationName, publisherName));
                }
            }
            catch (Exception ex)
            {
                // Do error handling here.
                throw new ApplicationException(string.Format(
                    "The partition for '{0}' in the {1} publication could not be created.",
                    hostname, publicationName), ex);
            }
            finally
            {
                publisherConn.Disconnect();
                if (distributorConn.IsOpen) distributorConn.Disconnect();
            }
' Define the server, database, and publication names
Dim publisherName As String = publisherInstance
Dim publicationName As String = "AdvWorksSalesOrdersMerge"
Dim publicationDbName As String = "AdventureWorks2008R2"
Dim distributorName As String = publisherInstance

Dim publication As MergePublication
Dim partition As MergePartition
Dim snapshotAgentJob As MergeDynamicSnapshotJob
Dim schedule As ReplicationAgentSchedule

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

' Create a connection to the Distributor to start the Snapshot Agent.
Dim distributorConn As ServerConnection = New ServerConnection(distributorName)

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

    ' Set the required properties for the publication.
    publication = New MergePublication()
    publication.ConnectionContext = publisherConn
    publication.Name = publicationName
    publication.DatabaseName = publicationDbName


    ' If we can't get the properties for this merge publication, 
    ' then throw an application exception.
    If (publication.LoadProperties() Or publication.SnapshotAvailable) Then
        ' Set a weekly schedule for the filtered data snapshot.
        schedule = New ReplicationAgentSchedule()
        schedule.FrequencyType = ScheduleFrequencyType.Weekly
        schedule.FrequencyRecurrenceFactor = 1
        schedule.FrequencyInterval = Convert.ToInt32("0x001", 16)

        ' Set the value of Hostname that defines the data partition. 
        partition = New MergePartition()
        partition.DynamicFilterHostName = hostname
        snapshotAgentJob = New MergeDynamicSnapshotJob()
        snapshotAgentJob.DynamicFilterHostName = hostname

        ' Create the partition for the publication with the defined schedule.
        publication.AddMergePartition(partition)
        publication.AddMergeDynamicSnapshotJob(snapshotAgentJob, schedule)
    Else
        Throw New ApplicationException(String.Format( _
         "Settings could not be retrieved for the publication, " + _
         " or the initial snapshot has not been generated. " + _
         "Ensure that the publication {0} exists on {1} and " + _
         "that the Snapshot Agent has run successfully.", _
         publicationName, publisherName))
    End If
Catch ex As Exception
    ' Do error handling here.
    Throw New ApplicationException(String.Format( _
     "The partition for '{0}' in the {1} publication could not be created.", _
     hostname, publicationName), ex)
Finally
    publisherConn.Disconnect()
    If distributorConn.IsOpen Then
        distributorConn.Disconnect()
    End If
End Try

İş Parçacığı Güvenliği

Bu türdeki tüm ortak static (Visual Basic'te Shared) üyeler iş parçacığı için güvenlidir. Herhangi bir örnek üyenin iş parçacığı için güvenli olduğu garanti edilmemiştir.