Find a consulting partner to help you take your business mobile, ramp up with Visual Studio and Xamarin, and build higher quality mobile solutions. Long-term strategic partners are mobile experts who can guide you through any stage of the app lifecycle and will help you design, develop, and test high-performing cross-platform mobile apps. We have a problem in our class where it's getting really impractical to download Visual Studio 2017 Community with Xamarin. What I would like to do is create an offline installer that consists of just VS Community 2017 and all required components to run Xamarin and the Azure SDK.
This provides services to handle Client/Server synchronization and conflict resolution.
CrossSync
CrossSync provides cross-plaform librairies for Xamarin and AspNetCore for easy data synchronization with offline data support based on Entity Framework Core.
Why ?
Entity Framework Core now offers a way to share the business data code between the mobile and server applications.
For now, Azure Mobile App is the most popular framework to do this. But it's working with .NetFramework and bring it to .NetCore seems to be not announced yet.
So to work with Azure Mobile App, your data layer cannot be shared across these different platforms.
This libs can be usefull for developpers which are looking for a way to synchronize offline datas on your mobile application using Entity Framework Core.
High level features are :
- EntityFramework use for both mobile (SQLite) and API (SQL Server)
- Offline data support
- Repository & Unit of work patterns
- ...
Top level Packages
Name | Description | Nuget |
---|---|---|
CrossSync.AspNetCore | Provides aspnet core sync tools | |
CrossSync.Xamarin | Provides all implementations for mobile data offline and sync |
Get Started
Server side
On your AspNetCore API Project :
Entity framework configuration
If you are not aware with EF, see EF Core docs
Your DbContext have to inherit from ServerContext class.
All of your entities which need to be synchronized with mobile have to extend VersionableEntity class.
- Your entities have to inherit from VersionableEntity class or implement IVersionableEntity.
- Your EF Context have to inherit from ServerContext class.
Controllers configuration
Controllers have to inherit from SyncController which is a crud controller.
When you are done, juste add sync registration into your startup.cs :
Client Side using Xamarin.Forms
Installation
On your Core assembly :
Configuration
This library needs to know about the connectivity status.
Create a class which implements IConnectivityService.
For example, the following uses the Plugin Connectivity from James Montemagno.
It also need a service to show errors during synchornization by implementing IErrorService.
For example, the following uses Acr UserDialogs :
The last step is to register services to the IoC container :
How to use
Business Data Services implementation
Start a synchronization
Synchronization, for now, have to be manually launched like this :
Soon, the synchronization will be done within an async background task.
Handle conflicts
In order to handler version conflicts between offline and server datas, you need to implement IConflictHandler<> on your data service
CrossSync
CrossSync provides cross-plaform librairies for Xamarin and AspNetCore for easy data synchronization with offline data support based on Entity Framework Core.
Offline Installer Mcafee
Why ?
Entity Framework Core now offers a way to share the business data code between the mobile and server applications.
For now, Azure Mobile App is the most popular framework to do this. But it's working with .NetFramework and bring it to .NetCore seems to be not announced yet.
So to work with Azure Mobile App, your data layer cannot be shared across these different platforms.
This libs can be usefull for developpers which are looking for a way to synchronize offline datas on your mobile application using Entity Framework Core.
High level features are :
- EntityFramework use for both mobile (SQLite) and API (SQL Server)
- Offline data support
- Repository & Unit of work patterns
- ...
Top level Packages
Name | Description | Nuget |
---|---|---|
CrossSync.AspNetCore | Provides aspnet core sync tools | |
CrossSync.Xamarin | Provides all implementations for mobile data offline and sync |
Get Started
Server side
On your AspNetCore API Project :
Entity framework configuration
If you are not aware with EF, see EF Core docs
Your DbContext have to inherit from ServerContext class.
All of your entities which need to be synchronized with mobile have to extend VersionableEntity class.
- Your entities have to inherit from VersionableEntity class or implement IVersionableEntity.
- Your EF Context have to inherit from ServerContext class.
Controllers configuration
Controllers have to inherit from SyncController which is a crud controller.
When you are done, juste add sync registration into your startup.cs :
Client Side using Xamarin.Forms
Installation
On your Core assembly :
Configuration
This library needs to know about the connectivity status.
Create a class which implements IConnectivityService.
For example, the following uses the Plugin Connectivity from James Montemagno.
It also need a service to show errors during synchornization by implementing IErrorService.
For example, the following uses Acr UserDialogs :
The last step is to register services to the IoC container :
How to use
Business Data Services implementation
Download Xamarin Offline Installer For Windows 7
Start a synchronization
Synchronization, for now, have to be manually launched like this :
Soon, the synchronization will be done within an async background task.
Handle conflicts
In order to handler version conflicts between offline and server datas, you need to implement IConflictHandler<> on your data service
Show moreDependencies
.NETStandard 2.0
- CrossSync.Infrastructure.Client(>= 0.1.0)
- Microsoft.EntityFrameworkCore.Relational(>= 2.1.1)
- Xamarin.Forms(>= 3.1.0.697729)
Used By
NuGet packages (1)
Showing the top 1 NuGet packages that depend on CrossSync.Xamarin:
Package | Downloads |
---|---|
CrossSync.Xamarin.Mvvm This provides a MVVM layer for Xamarin forms Tools extensions View models abstraction Error management Navigation VM to VM IoC registration |
GitHub repositories
This package is not used by any popular GitHub repositories.