In a move set to evidence the impact of open source upon Microsoft technologies, community developers have provided software to automatically synchronize the Perst for .NET mobile database system from McObject, running on Windows Phone 7 (WP7) devices, with Microsoft SQL Server databases.
The new open source synchronization code, called PerstSyncProvider, is based on the Microsoft Sync Framework and resides on the mobile client and integrates Perst with the Sync toolkit. The theory here is that developers will be able to use Sync with Perst as an "offline cache" for storage on WP7 devices. The framework itself provides connectivity on the client side as well as server-based web services, database logic, change-tracking, session management, and handling of client requests.
Germany-based MediFox created PerstSyncProvider and then subsequently launched it as an open source project. The company currently deploys Perst and PerstSyncProvider in its MediFox CareMobile app, which is the mobile WP7-based client for its "MediFox ambulant", an application for delivering social and medical services to home-based patients in the German healthcare system.
With CareMobile, field-based providers equipped with WP7 smartphones can enter the latest medical chart data and other patient details into the system, while obtaining histories, care instructions, and other updates, through synchronization between the mobile device and the Microsoft SQL Server enterprise database residing at a managing healthcare organization. MediFox has distributed the CareMobile app free to more than 2,000 MediFox ambulant licensees and prospective users.
One unnamed developer has singled out two Perst features — serializable transactions and automatic schema evolution — as beneficial for both programmers and end-users of the CareMobile app. Serializability enables transactions (groupings of one or more database operations) to execute in parallel, with the same consistency as if executed in serial.
Schema evolution simplifies the process of changing the database design — adding new fields or tables, for example. These built-in Perst features help to make CareMobile faster and more reliable than it would be using WP7's native data management.