MySql Sync Provider. Manage a sync process beetween two relational databases provider. This provider works with SQL Server and can be used as Client or Server provider .Net Standard 2.0


Keywords
Data, Database, Sync, Synchronization, Framework, Sql, MySql, Sqlite, Dotmim.Sync, NetStandard, SyncFramework, change-tracking, changetracking, datasync, nuget, sql-server, synchronisation
License
MIT
Install
Install-Package Dotmim.Sync.MySql -Version 1.0.0-beta-1517

Documentation

DMS

Build Status Documentation Status

See the Azure Devops CI : https://dev.azure.com/dotmim/Dotmim.Sync

Sources

Release and pre-release are hosted on nuget.org : https://www.nuget.org/packages?q=dotmim.sync

Documentation

Read the full documentation on https://dotmimsync.readthedocs.io/

Dotmim.Sync

DotMim.Sync (DMS) is a straightforward framework for syncing relational databases, developed on top of .Net Standard 2.0, available and ready to use within IOT, Xamarin, .NET, UWP and so on :)

Multi Databases Cross Plaform .Net Standard 2.0

TL;DR

Here is the easiest way to create a first sync, from scratch :

// Sql Server provider, the "server" or "hub".
SqlSyncProvider serverProvider = new SqlSyncProvider(
    @"Data Source=.;Initial Catalog=AdventureWorks;Integrated Security=true;");

// Sqlite Client provider acting as the "client"
SqliteSyncProvider clientProvider = new SqliteSyncProvider("advworks.db");

// Tables involved in the sync process:
var setup = new SyncSetup("ProductCategory", "ProductDescription", "ProductModel", 
                          "Product", "ProductModelProductDescription", "Address", 
                          "Customer", "CustomerAddress", "SalesOrderHeader", "SalesOrderDetail");

// Sync agent
SyncAgent agent = new SyncAgent(clientProvider, serverProvider);

do
{
    var result = await agent.SynchronizeAsync(setup);
    Console.WriteLine(result);

} while (Console.ReadKey().Key != ConsoleKey.Escape);

And here is the result you should have, after a few seconds:

Synchronization done.
        Total changes  uploaded: 0
        Total changes  downloaded: 2752
        Total changes  applied: 2752
        Total resolved conflicts: 0
        Total duration :0:0:3.776

You're done !

Now try to update a row in your client or server database, then hit enter again. You should see something like that:

Synchronization done.
        Total changes  uploaded: 0
        Total changes  downloaded: 1
        Total changes  applied: 1
        Total resolved conflicts: 0
        Total duration :0:0:0.045

Yes it's blazing fast !

Need Help