正如我的标题所说,我需要弄清楚如何在彼此之间同步两个我的Microsoft Lightswitch应用程序。 此外,重要的是一个应用程序在网络上,另一个应用程序在桌面上创建。同步两个Lightswitch应用程序
因此,我需要的是从Web服务器拉下数据库条目并将其放入桌面PC使用的数据库中。
让我知道你是否需要更多的信息。
正如我的标题所说,我需要弄清楚如何在彼此之间同步两个我的Microsoft Lightswitch应用程序。 此外,重要的是一个应用程序在网络上,另一个应用程序在桌面上创建。同步两个Lightswitch应用程序
因此,我需要的是从Web服务器拉下数据库条目并将其放入桌面PC使用的数据库中。
让我知道你是否需要更多的信息。
正如Yann所说,它不是一个开箱即用的功能,但应该可以在Lightswitch的代码中完成。
您需要手动编写代码以执行实际的同步(通过连接到Web服务器上的数据库并使用SQL查询同步数据),但是因为这无法在客户端完成(Silverlight doesn'允许使用SQL类),您可以使用'命令表'模式(http://blog.pragmaswitch.com/?p=332)。
基本上,您创建一个新表(例如,SyncRequests)并从客户端添加一条记录,然后您可以使用服务器代码(通过SyncRequests_Inserted事件)执行您的同步代码。
用于同步数据库的实际代码将取决于您想要执行的操作(从Web数据库覆盖本地数据库中的所有数据,合并记录,仅添加新等)以及一般数据库结构。
您可以在发布向导期间将您的桌面应用程序指向Web服务器上的数据库。还是他们完全不同的数据库,完全不同的表?
有两种方式:
第一种方式 - 复制
方式二 - 手动同步
在两个数据库上运行数据库比较应用程序。
创建一个脚本来同步客户端数据库的数据。
创建脚本以同步服务器的数据库元数据。
运行更新脚本来更新服务器的元数据。
他们有相同的表,同样的名字也。 – Hoh 2013-02-22 09:29:41
然后,按照我的建议,在发布向导期间更改连接字符串以指向Web服务器上的数据库。我没有尝试过这个,但它*应该*工作。 – 2013-02-22 13:08:16
谢谢你的建议,但是。我想在主PC上有本地数据库,并在Web服务器上有可共享数据库。而我的客户想要的是每月同步两个数据库一次或两次,以便将来自Web服务器的所有信息都存入本地数据库。 – Hoh 2013-02-22 13:35:24