AddSubscription Method

Creates a new anonymous subscription to an existing publication. After calling the AddSubscription method, the application must call the Synchronize method to synchronize the new subscription to the publication based on the latest snapshot.

Namespace:  System.Data.SqlServerCe
Assembly:  System.Data.SqlServerCe (in System.Data.SqlServerCe.dll)

Syntax

'Declaration
Public Sub AddSubscription ( _
    addOption As AddOption _
)
'Usage
Dim instance As SqlCeReplication
Dim addOption As AddOption

instance.AddSubscription(addOption)
public void AddSubscription(
    AddOption addOption
)
public:
void AddSubscription(
    AddOption addOption
)
member AddSubscription : 
        addOption:AddOption -> unit 
public function AddSubscription(
    addOption : AddOption
)

Parameters

Remarks

replication only supports anonymous subscriptions.

The database administrator must configure to support replication, create the publication, and enable the publication for anonymous subscriptions before any application can subscribe to the publication. The administrator does this on the system using either the administrative or programmatic interfaces of replication.

The AddOption value specifies the source of the newly created subscription database. The value can be one of the following constants:

Value

Description

CreateDatabase

Specifies that the database must first be created, and that the subscription contents are then obtained from the publisher over the network. In this case, the AddSubscription and Synchronize method calls create the database and download the database contents from the Publisher.

ExistingDatabase

Specifies that the database already exists, but contents are obtained from the publisher over the network. In this case, the AddSubscription and Synchronize method calls create the subscription and download the database contents from the Publisher.

AddOption only affects how the database is initially created and treated by the Client Agent; therefore, determining what data is downloaded to the device from the server.

Examples

This example creates a new subscription database by passing the CreateDatabase value of AddOption when calling the AddSubscription method.

Dim repl As SqlCeReplication = Nothing

Try
    ' Instantiate and configure SqlCeReplication object
    '
    'NOTE: when possible, prompt users to enter security 
    'credentials at runtime. If you store credentials in a file, 
    'you must secure the file to prevent unauthorized access.
    '
    repl = New SqlCeReplication()
    repl.InternetUrl = "https://www.adventure-works.com/sqlce/sqlcesa35.dll"
    repl.InternetLogin = "MyInternetLogin"
    repl.InternetPassword = "<enterStrongPassword>"
    repl.Publisher = "MyPublisher"
    repl.PublisherDatabase = "MyPublisherDatabase"
    repl.PublisherLogin = "MyPublisherLogin"
    repl.PublisherPassword = "<enterStrongPassword>"
    repl.Publication = "MyPublication"
    repl.Subscriber = "MySubscriber"
    repl.SubscriberConnectionString = "Data Source=MyDatabase.sdf"

    ' Create the local SQL Mobile Database subscription
    '
    repl.AddSubscription(AddOption.CreateDatabase)

    ' Synchronize to the SQL Server to populate the Subscription 
    '
    repl.Synchronize()
Catch
    ' Handle errors here
    '
Finally
    ' Dispose the repl object
    '
    repl.Dispose()
End Try
SqlCeReplication repl = null;

try
{
    // Instantiate and configure SqlCeReplication object
    //
    //NOTE: when possible, prompt users to enter security 
    //credentials at runtime. If you store credentials in a file, 
    //you must secure the file to prevent unauthorized access.
    //
    repl = new SqlCeReplication();
    repl.InternetUrl = "https://www.adventure-works.com/sqlce/sqlcesa35.dll";
    repl.InternetLogin = "MyInternetLogin";
    repl.InternetPassword = "<enterStrongPassword>";
    repl.Publisher = "MyPublisher";
    repl.PublisherDatabase = "MyPublisherDatabase";
    repl.PublisherLogin = "MyPublisherLogin";
    repl.PublisherPassword = "<enterStrongPassword>";
    repl.Publication = "MyPublication";
    repl.Subscriber = "MySubscriber";
    repl.SubscriberConnectionString = "Data Source=MyDatabase.sdf";

    // Create a local SQL Mobile Database subscription
    //
    repl.AddSubscription(AddOption.CreateDatabase);

    // Synchronize to the SQL Server database
    //
    repl.Synchronize();
}
catch (SqlCeException)
{
    // Handle errors here
    //
}
finally
{
    // Dispose the repl object
    //
    repl.Dispose();
}

See Also

Reference

SqlCeReplication Class

SqlCeReplication Members

System.Data.SqlServerCe Namespace