Como descartar uma assinatura (programaticamente)
Neste tópico, você aprenderá como descartar uma assinatura em um banco de dados do Microsoft SQL Server Compact 3.5 (SQL Server Compact 3.5) usando a classe SqlCeReplication. Para obter mais informações sobre como usar o namespace SqlServerCe, consulte a documentação de referência de namespaces do SqlServerCe.
Procedimentos do SQL Server Compact 3.5
Para descartar uma assinatura
Inicialize um objeto SqlCeReplication.
Defina as seguintes propriedades do objeto SqlCeReplication:
- SubscriberConnectionString
- Subscriber
- Publisher
- Publication
- PublisherDatabase
Chame o método DropSubscription passando o DropOption. O DropOption permite que você mantenha ou exclua o banco de dados. Se você especificar um DropOption de DropDatabase e o banco de dados contiver mais de uma assinatura, o banco de dados não será excluído.
Exemplo
Este exemplo mostra como descartar uma assinatura em um banco de dados denominado MyDatabase.sdf. Depois que a assinatura for descartada, o banco de dados será excluído.
SqlCeReplication repl = null;
try
{
// Set the Replication object properties.
repl = new SqlCeReplication();
repl.SubscriberConnectionString =
@"Data Source='ssce.sdf'";
repl.Publisher = @"servername";
repl.PublisherDatabase = @"SQLMobile";
repl.Publication = @"SQLMobile";
// Drop the subscription and delete the database.
repl.DropSubscription(DropOption.DropDatabase);
}
catch(SqlCeException ex)
{
// Use your own error handling routine to show error information.
// ShowError.ShowErrors(ex);
}
finally
{
// Dispose of the Replication object.
repl.Dispose();
}
Dim repl As SqlCeReplication = Nothing
Try
' Set the Replication object properties.
repl = New SqlCeReplication()
repl.SubscriberConnectionString = "Data Source='ssce.sdf'"
repl.Publisher = "servername"
repl.PublisherDatabase = "SQLMobile"
repl.Publication = "SQLMobile"
' Drop the subscription and delete the database.
repl.DropSubscription(DropOption.DropDatabase)
Catch ex As SqlCeException
' Use your own error handling routine to show error information.
' ShowErrors(ex)
Finally
' Dispose of the Replication object.
repl.Dispose()
End Try
ISSCEMerge *pISSCEMerge = NULL;
BSTR bstr = NULL;
/* Create the Replication object. */
CoCreateInstance(CLSID_Replication, NULL, CLSCTX_INPROC_SERVER,
IID_ISSCEMerge, (LPVOID *) &pISSCEMerge);
/* Set Subscriber properties. */
bstr = SysAllocString(L"data source=\\Ssce.sdf");
pISSCEMerge->put_SubscriberConnectionString(bstr);
SysFreeString(bstr);
bstr = SysAllocString(L"SamplePublisher");
pISSCEMerge->put_Publisher(bstr);
SysFreeString(bstr);
bstr = SysAllocString(L"AdventureWorks_SQLCE");
pISSCEMerge->put_PublisherDatabase(bstr);
SysFreeString(bstr);
bstr = SysAllocString(L"SQLCEReplDemo");
pISSCEMerge->put_Publication(bstr);
SysFreeString(bstr);
/* Drop the subscription and delete the database. */
pISSCEMerge->DropSubscription(DROP_DATABASE));
Consulte também
Outros recursos
Usando a replicação de mesclagem
Descartando uma assinatura