I have a scenario where my accidentally connected clients (WPF application, SQL Express DB) should synchronize with the central SQL Server. Client machines are used in the field, and often time does not have any connection. The plan is to use your smartphone as an intermediate storage and forwarding. The client will change local changes in the phone. Then turn off the phone, turn off the laptop and walk along the road. While driving, the phone will connect and upload the changes to the central office.
I need to know if I can do this using Sync Framework.
The documentation seems to indicate that synchronizing orchestration requires access to both the source and destination. In this case, I do not have a connection to the destination (central server). I suspect that I need to find a way to cache targeted knowledge locally, but I'm not sure if this works.
It may be worth noting that client machines will have direct connections on a periodic basis, but not daily.
So the script:
- The client machine is directly connected on Monday and performs full synchronization.
- On Tuesday, the user enters the field and uses the application, generating updates / inserts / deletes into the SQL Express database.
- The user "synchronizes" the client computer with his smartphone. (Save file to SD card)
- The user disconnects the client and drives along the road.
- The smartphone connects to the network and uploads files to the central office.
- The central office "synchronizes" the data from the downloaded file (s) into the central SQL Server database.
- Repeat 2-6 on Wednesday, Thursday, Friday.
- The next Monday, the user again connects directly for complete synchronization.
How to do it using Sync Framework?
Does it ever help me to download a smartphone daily from the central office (for example, knowledge of the central office)? Is there any harm if the client organizes a synchronization session against obsolete cached knowledge from the central office?
Thanks in advance!
source share