XML,SQL Server Compact还是其他什么?

时间:2010-07-04 13:23:12

标签: wpf xml sql-server-ce desktop

我正在开发一个桌面应用程序,需要收集数据(来自用户)并以安全的方式在本地存储。当互联网连接可用时,它需要将此数据与中央数据库同步。该应用程序是WPF,我想利用WPF的新数据绑定功能。我真的希望这个应用程序是轻量级的,因此没有正式的业务对象,只是直接绑定到XML文件。然而,我的问题是安全性。我可以看到加密XML文件,这是一个现实的选择。我想使用XML的另一个原因是与其他应用程序(在桌面上)进行交互,对于这种类型的应用程序,这种应用程序发生了很多。

另一方面,有SQL Server Compact,但要使用它,我很可能希望业务对象代表表,并且要与其他应用程序接口,我还需要将数据吐出到XML。安全性很简单,只需在数据库中添加密码即可。

你们觉得怎么样?是否有一些我没有考虑的事项,我是否提供了有关我的问题域的足够信息?

2 个答案:

答案 0 :(得分:3)

如果你需要一些本地存储而不用大惊小怪,你一定要看SQLite

它有很好的.NET support,包括对Entity Framework的支持,基本上是无摩擦的,不需要安装服务器或类似的东西(只需在应用程序的部署中包含一些DLL - xcopy或其他)。

它还允许您加密整个数据库文件(* .s3db)以保护其内容。

答案 1 :(得分:3)

我刚刚完成了一个完全正确的应用程序,即同步到远程的本地数据库(SQL2008)。我花了很多时间研究这个并最终确定:

  • WPF
  • SQL Server CE
  • 实体框架
  • Sync Framework( - > SQL Server 2008,在我的情况下使用更改跟踪)

我意识到你想要一些轻量级的东西 - 但我不得不说实体框架&绑定消除了数据绑定和构建UI的大部分痛苦,因此您可以专注于手头的问题而不是技术。

我会使用WCF绑定到外部应用程序。