Compartir a través de


Cómo reinicializar una suscripción (mediante programación)

En este tema se describe cómo reinicializar una suscripción en Microsoft SQL Server Compact 3.5 (SQL Server Compact 3.5) mediante la clase SqlCeReplication. Para obtener más información sobre cómo usar el espacio de nombres SqlServerCe, consulte la documentación de referencia sobre el espacio de nombres SqlServerCe.

Para reinicializar una suscripción

  1. Inicialice un objeto SqlCeReplication.

    SqlCeReplication repl = new SqlCeReplication();
    
  2. Establezca las propiedades de conexión. Estas propiedades especifican el nombre y la ubicación de la publicación a la que se está suscribiendo, el nombre y la ubicación de la base de datos local de SQL Server Compact 3.5 y la ubicación del Agente de servidor de SQL Server Compact 3.5.

    repl.InternetUrl = "https://www.adventure-works.com/sqlmobile/sqlcesa35.dll";
    repl.InternetLogin = "MyInternetLogin";
    repl.InternetPassword = "<password>";
    repl.Publisher = "MyPublisher";
    repl.PublisherDatabase = "MyPublisherDatabase";
    repl.PublisherLogin = "MyPublisherLogin";
    repl.PublisherPassword = "<password>";
    repl.Publication = "MyPublication";
    repl.Subscriber = "MySubscriber";
    repl.SubscriberConnectionString = "Data Source=MyDatabase.sdf";
    
  3. Llame al método ReinitializeSubscription para marcar la suscripción para su reinicialización. Si pasa true al método ReinitializeSubscription, los cambios realizados en el suscriptor se cargarán en el publicador antes de la reinicialización. Si pasa false, todos los cambios realizados en el suscriptor se rechazarán durante la reinicialización.

    repl.ReinitializeSubscription(true);
    
  4. Para volver a rellenar la suscripción, deberá llamar al método Synchronize después de llamar al método ReinitializeSubscription.

    repl.Synchronize();
    

Ejemplo

En este ejemplo se muestra cómo reinicializar una suscripción de SQL Server Compact 3.5. En este ejemplo, los cambios realizados en el suscriptor se cargan primero en el publicador, se reinicializa la suscripción y, a continuación, se sincronizan los datos.

SqlCeReplication repl = null;

try
{
   // Create SqlCeReplication instance
   //
   repl = new SqlCeReplication();
   repl.InternetUrl = "https://www.adventure-works.com/sqlmobile/sqlcesa35.dll";
   repl.InternetLogin = "MyInternetLogin";
   repl.InternetPassword = "<password>";
   repl.Publisher = "MyPublisher";
   repl.PublisherDatabase = "MyPublisherDatabase";
   repl.PublisherLogin = "MyPublisherLogin";
   repl.PublisherPassword = "<password>";
   repl.Publication = "MyPublication";
   repl.Subscriber = "MySubscriber";
   repl.SubscriberConnectionString = "Data Source=MyDatabase.sdf";

   // Mark the subscription for reinitialization with Upload first
  
   repl.ReinitializeSubscription(true);

   // Synchronize to SQL Server to populate the Subscription 

   repl.Synchronize();
}
catch (SqlCeException)
{
   // Handle errors here
}
finally
{
   // Dispose the repl object
   
   repl.Dispose();
}
Dim repl As SqlCeReplication = Nothing

Try
   ' Create SqlCeReplication instance

   repl = New SqlCeReplication()
   repl.InternetUrl = "https://www.adventure-works.com/sqlmobile/sqlcesa35.dll"
   repl.InternetLogin = "MyInternetLogin"
   repl.InternetPassword = "<password>"
   repl.Publisher = "MyPublisher"
   repl.PublisherDatabase = "MyPublisherDatabase"
   repl.PublisherLogin = "MyPublisherLogin"
   repl.PublisherPassword = "<password>"
   repl.Publication = "MyPublication"
   repl.Subscriber = "MySubscriber"
   repl.SubscriberConnectionString = "Data Source=MyDatabase.sdf"

   ' Mark the subscription for reinitialization with Upload first
            
   repl.ReinitializeSubscription(True)

   ' Synchronize to SQL Server to populate the Subscription 

   repl.Synchronize()
Catch
   ' Handle errors here
Finally
   ' Dispose the repl object
   
   repl.Dispose()
End Try

Vea también

Otros recursos

Usar la replicación de mezcla
Suscribirse a publicaciones (SQL Server Compact)
Reinicializar una suscripción (SQL Server Compact)

Ayuda e información

Obtener ayuda (SQL Server Compact 3.5 Service Pack 1)