Name Property

Subscription.Name Property


Gets the name assigned to an existing subscription.

Namespace:   Microsoft.SqlServer.Replication
Assembly:  Microsoft.SqlServer.Rmo (in Microsoft.SqlServer.Rmo.dll)

public string Name { get; }

Property Value

Type: System.String

A String value in the format <SubscriberName>:<SubscriptionDBName>.

The Name property is a read-only property that is generated when the subscription is created.

The Name property can only be retrieved by members of the sysadmin fixed server role at the Publisher, by members of the db_owner fixed database role on the publication database, or by the user that created the subscription.

Retrieving the Name property is equivalent to executing sp_helpsubscription or sp_helpmergesubscription.

// 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(subscriberName);

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

	// Connect to the Publisher.

	// 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.
		// 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);
Return to top
© 2015 Microsoft