• Stars
    star
    861
  • Rank 52,629 (Top 2 %)
  • Language
    C#
  • License
    MIT License
  • Created almost 8 years ago
  • Updated about 2 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A brand new database synchronization framework, multi platform, multi databases, developed on top of .Net Standard 2.0. https://dotmimsync.readthedocs.io/

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

More Repositories

1

SyncWinRT

Implementation of the old Sync Framework for Windows Phone, Windows Store apps, iOS and Android (thx to Xamarin)
C#
49
star
2

msal-react-tester

MSAL React Tester is a NPM package to allows you creating unit tests for any of your components that need to be authenticated (or not) using the msal-react package and Azure AD
TypeScript
44
star
3

LightStone

Carousel control for Windows 8.1 store application and Windows Phone 8.1 application
C#
26
star
4

Jhispter-Kubernetes

Demos Jhispter and Kubernetes and microservices
Java
9
star
5

ambassadorandtls

How to configure ambassador to handle TLS with Let's Encrypt and cert manager
9
star
6

AKS_DNS01Solver

Using DNS solver within an Azure Kubernetes Services cluster, using CertManager and Let's Encrypt to secure the cluster and be able to close port 80
Shell
9
star
7

ESM

Boilerplate to show how ESM are working today, both on browsers or from NodeJS. Use Rollup to bundle the modules in a compatible bundle for non ESM browser.
JavaScript
9
star
8

aad_fastapi

aad fastapi bearer validation and client authentication
Python
8
star
9

ProjectY

Project Y is a straightforward Landing Zones automated deployment tool dedicated to data processing.
C#
7
star
10

markdown-lexical-editor

Markdown editor using Lexical and Shadcn UI
TypeScript
6
star
11

microsoft_teams_bot_proactive_message_authentication_graph

Creating a Bot within Microsoft Teams, then sending a proactive message, then authenticate the user to send eventually an email !
TypeScript
5
star
12

JsonExtensions

C#
5
star
13

NextMeetingsForGraphSample

Application exemple pour Microsoft Graph
C#
4
star
14

UniversityDevoxx

Devoxx University Samples on Angular & TypeScript
4
star
15

NextMeeting

Application NextMeeting UWP Office Graph
C#
4
star
16

DbricksSqlNet

Databicks connector to Databricks Sql Warehouse
C#
4
star
17

Kubedmc

One finger kubectl command line :)
C#
3
star
18

EDDiTeams

EDDi Ms Teams application
CSS
2
star
19

Windows10Sample

My Work around Windows 10 application
C#
2
star
20

generator-babylonjs

Yeoman generator for BabylonJS
JavaScript
2
star
21

VehiclesSyncDemo

Demo
C#
1
star
22

msexp-rome-demos

Démos pour la session ROME
C#
1
star
23

TDOnline

Sample for TDOnline
JavaScript
1
star
24

Excel-Addin-BabylonJS

Using BabylonJS in an Excel Add in to show people pathfinding through the Microsoft France lobby
1
star
25

python_36_azure_app_services

How to deploy a straightforward Python application (with Flask) using the last python version, using app services extension.
JavaScript
1
star
26

AngularAppServices

TypeScript
1
star
27

DmBinaryFormatter

A pretty straightforward binary serializer working in .net standard 1.6
C#
1
star