2

正如我的标题所说,我需要弄清楚如何在彼此之间同步我的两个 Microsoft Lightswitch 应用程序。此外,重要的是一个应用程序是在网络上,另一个是为桌面创建的。

所以,我需要的是从 Web 服务器中提取数据库条目并将其放入台式 PC 使用的数据库中。

如果您需要更多信息,请告诉我。

4

3 回答 3

1

正如 Yann 所说,它不是开箱即用的内置功能,但应该可以在代码中的 Lightswitch 中实现。

您需要手动编写代码来进行实际同步(通过连接到 Web 服务器上的数据库并使用 SQL 查询同步数据),但因为这不能在客户端完成(Silverlight 不允许 SQL 类要使用)您可以使用“命令表”模式(http://blog.pragmaswitch.com/?p=332)。

基本上,您创建一个新表(例如 SyncRequests)并从客户端向其中添加一条记录,然后您可以使用服务器代码(通过 SyncRequests_Inserted 事件)来执行您的同步代码。

用于同步数据库的实际代码将取决于您到底想要做什么(从 Web DB 覆盖本地 DB 中的所有数据、合并记录、仅添加新数据等)以及一般的 DB 结构。

于 2013-03-05T11:44:30.150 回答
0

There are two ways:

First way - replication

  1. You can change the database to use MSSQL.
  2. Enable replication on the database. The database will synchronise between two databases.

Second way - manual synchronisation

  1. Both databases are independent from each other.
  2. Every now and then, you take a backup from the server or backup from Desktop.
  3. Run a Database comparison App on both databases.

  4. Create a script to synchronise the client database's data.

  5. Create a script to synchronise the server's database metadata.

  6. Run the update script to update the sever's metadata.

  7. Run the update script to update the client's data.
于 2014-03-08T02:59:22.580 回答
0

您可以在发布向导期间将您的桌面应用程序指向 Web 服务器上的数据库。还是它们是完全不同的数据库,具有完全不同的表?

于 2013-02-21T12:41:00.940 回答