我正在开发一个.NET 4 Winforms应用程序,我在决定处理数据库的最佳方式时遇到了问题。我们希望提供一个云数据库系统,在那里应用程序可以通过WCF服务与“云”通信,并且本质上做与连接到本地数据库(本地SQL Express,服务器上的SQL Server2008 R2 )相同的事情。
我们看到两个选项:
1)使用WCF并对云数据库进行所有调用2)使用本地数据库并使用Microsoft Sync Framework使云保持同步
我们最终将拥有一个web应用程序,它也将使用云数据作为用户的另一个前端。
显然,两难的选择是使用哪种方法。如果我们选择选项1,那么我们就不必在使用软件的任何地方安装SQL Express,例如公共位置,并且用户的数据可以下载到该数据库。WCF选项允许所有数据保持中心。
我们最终将在移动端合并,这样iPhone、iPad和安卓也可以与云同步。
我感兴趣的是你对严格的云数据库选项与偶尔连接的选项的看法,即数据库是本地的,同步到云。
谢谢。
发布于 2011-07-10 05:21:42
如果你想考虑离线/偶尔连接的情况,为什么不根据需要同时选择1)和2)呢?如果您使用相同的n层架构通过WCF访问数据库,而不管它在哪里(云数据库或本地数据库),您的代码将始终是相同的,唯一的区别将是偶尔连接的应用程序将同步数据(也可能通过WCF)。
同步vs直接访问的一个问题是它不是实时的,即其他用户将访问和更新数据,您通常必须考虑如何处理冲突等。如果没有真正需要(有时连接是主要原因)离线功能,我会选择1)。从上面的内容也不清楚你将存储什么类型的数据,如果它是特定于用户的,以及数据可能有多大,但同样,当使用同步时,这些都是非常真实的问题,特别是涉及到安全性和性能时。
如果您可以提供更多关于解决方案将做什么的信息,它也可能会有所帮助。
https://stackoverflow.com/questions/6636397
复制相似问题