Skip to content

Support for online/offline sync between local and remote database. #4645

@10Dev

Description

@10Dev

I realize in advance that is is a difficult task but would like to get the request in early so it can be considered for planning. The feature would be of great benefit to Microsoft's large (and small) enterprise customers.

With the recent purchase of Xamarin by Microsoft I suppose Android and IOS targets might eventually enter the picture but for now I will describe a scenario based on a "pure" Windows 10 UWP based ecosystem.

The Surface tablet in particular has sparked a renewed interest in Microsoft development technology to deploy enterprise wide apps to an increasingly mobile workforce.

The original design of "data" for WIndows 8 had a strangley myopic view of "lightweight" apps using Web API based calls to an Azure based cloud where presumably you have a traditional EF based implementation to SQL Server. This is a "first world" viewpoint based on fast relaible cell communication in major metropolitan areas. Even there you are going to get "dead spots" and other glitches. Additionally, cell connectivity in tablets and laptops is still a rare option. Works for BUILD demos, falls apart in real world. The only devices with reliable connectivity were cell phones and Microsoft is still looking for traction on phones (note optimistic viewpoint)

But with Windows 10 UWP it can all come together nicely. Enterprises can issue continuum based 950 cell phones and/or i7 based Surface tablets to enable mobile apps that can bring very real competitive advantage because for the first time there is an intersection of computing power and development productity along with legacy compatability that exists in no other ecosystem.

This scenario all revoles around taking advantage of local DB storage that enables complex apps for a mobile workforce spanning a range from engineering modelling, bridge and road inspection, sales and ordering etc where the employee with a sophisticated Surface tablet has no internet connectivity for large periods of time.

And then the tablet detects interent all the updates in the tablet DB need to be 2 way synced with the cloud DB. I am sure you are aware that this becomes complex.

But the original EF Code First Migragrations (Magic Unicorn Version1) made something very complex become very amazing simple.

And this partially connected scenario of the local EF UWP Database (which is also a rather abstract non-extistent magical creature at this point) seems approachable as something that fits within an abstract view of the code generation already part of EF.

A person could of course rain on this parade by saying this is nothing but a sync framework being proposed, but by integrating this into the EF Code First, it enables developer productivity to manage an important upcoming opportunity of "UWP Everywhere" by addressing the issue at the design level/surface/point where it belongs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels
    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions