我对Windows移动应用程序中使用数据库与平面文件的优缺点提出了疑问。
我们正在开发一个在Windows Mobile 6.5上运行并使用C#/ .NET Compact Framework 3.5的移动应用程序。
移动组件用于库存系统以接收交货。然后,这些数据通过Wi-Fi使用Web服务发送到应用程序服务器。
现在,我们需要实施备份计划。到目前为止我们同意的是当移动设备无法将数据发送到服务器时,它必须在本地保留它,然后在以后发送它。它可以使用移动设备发送,也可以通过usb将移动设备连接到PC连接到PC,然后PC将数据发送到服务器。
我的问题:在这种情况下哪个更好用?部署SQL Server Compact或将数据写入平面文件(xml,二进制等)
我想了解每种方法的利弊,不仅要考虑技术方面,还要考虑所涉及的开发工作。
谢谢!
答案 0 :(得分:1)
我对此方案的个人经验是使用网络的SQL CE to do Merge Replication instead 服务有一些很好的理由:
虽然这确实需要更多的SQL知识,但它是可靠的技术,不需要不断重写,测试和调试。
如果你被锁定使用网络服务,那么使用SQL CE对我来说似乎有些过分。我只是复制数据库所做的事情,并将事务写入文件(xml / json / binary),然后根据需要使用它们(在wi-fi范围内运行它们或在机器上运行服务时运行它们)将文件从移动设备中拉出并移到本地PC或服务器上并运行这些事务。)