具有本地数据选项的Silverlight 4 OOB

时间:2010-09-30 18:07:10

标签: c# .net silverlight silverlight-oob

现在我有一个带有SQL Server后端的Winform应用程序。 DAL由Linq到SQL组成。这个应用程序的一个复杂性是它需要离线运行。

我通过使用合并复制来保持本地SQL Express实例与中央SQL Server同步。我有一些逻辑检测到连接状态并适当地切换contexts连接字符串。

我的问题是,这也适用于Silverlight 4吗?理论上,我会检测它们何时离线并适当地切换连接。想法?


修改

事实上,这似乎是可能的。请参阅HERE

我现在想要了解的是,如果我能够使用 EF L2S ,而不是像RecordSets那样使用它。

2 个答案:

答案 0 :(得分:1)

使用Silverlight(任何版本),问题不在于与数据库的连接。在Silverlight中,你没有它。您唯一能做的就是回复发出请求的服务器。

因此,您必须运行某种本地IIS实例并连接到该实例,然后依次连接到本地SQL实例。

问题是,如果您的SL应用程序是从您的站点加载的,然后连接丢失,则您的应用程序无法检测到它。您必须转到本地计算机上服务器的新链接,然后在它们再次连接时切换回来。

对于这样的事情,你最好坚持使用Winforms应用程序并确定你是否有连接。这样,您可以在没有连接时切换您点击的数据库。

答案 1 :(得分:1)

casperOne所说的是浏览器外的Silverlight无法访问客户端上的完整数据库。可以做的最好的事情是在隔离存储中使用某种紧凑型数据库,或者使用Silverlight 4在少数几个可访问的文件夹中使用。我个人使用siaqodb.com,但您必须手动保持数据同步(这可能是一场噩梦。)

最近我看到有人可以访问SQL compact database。但是,现在可以有更多方法来访问数据。自从我为Silverlight寻找客户端数据库以来已经有一段时间了。