Comparando os objetos Replication
Quando você desenvolve um aplicativo que usa a replicação de mesclagem, há várias diferenças entre os objetos Replication do código nativo e gerenciado. A principal diferença entre as duas plataformas é o suporte para sincronização assíncrona.
Métodos de sincronização
No código nativo, a sincronização ocorre em um único thread. Para relatar o status de sincronização no seu aplicativo, implemente a interface ISyncStatusReport e seus métodos. Entretanto, no código gerenciado, a sincronização pode ocorrer em vários threads, e o Microsoft .NET Compact Framework manipula grande parte do comportamento assíncrono. Como desenvolvedor do aplicativo, você escolhe se deve usar ou não o relatório de status de sincronização.
A outra alteração importante a ser observada entre os métodos de Replication são os três métodos usados para executar a sincronização no código nativo: Initialize, Run e Terminate. No código gerenciado, essas três funções estão incorporadas em um único método Synchronize.
A tabela a seguir mostra o mapeamento entre métodos Replication no código nativo e gerenciado:
Método nativo (Visual C++ for Devices) |
Método gerenciado (.NET) |
---|---|
Initialize |
Synchronize |
Run |
Synchronize |
Terminate |
Synchronize |
Cancel |
CancelSynchronize |
n/d |
BeginSynchronize |
n/d |
EndSynchronize |
n/d |
LoadProperties |
n/d |
SaveProperties |
Dica
O método Synchronize no código gerenciado executa todas as funções dos métodos Initialize, Run e Terminate no código nativo.