我有以下情况:
我们为客户开发了一个Silverlight 4应用程序,它将用作浏览器外的应用程序。该应用程序正在脱机工作,即应用程序和数据库位于用户本地计算机上。该应用程序正在使用WCF-RIA服务连接到本地数据库。该数据库将是SQL Server Express,SQL Server CE或MySQL。我们正在使用MVVMLight和MEF。
外部网络服务器仅用于不时更新应用程序或向应用程序添加新模块。为实现这一目标,我们采取类似Jeremy Likness博客(http://www.wintellect.com/CS/blogs/jlikness/archive/2010/05/25/silverlight-out-of-browser-dynamic-modules- in-offline-mode.aspx)
我们这样做的原因很复杂。但是长话短说这主要是出于以后在线版本的兼容性原因,我们不想使用WPF。因此,我们需要使用Silverlight和WCF-RIA服务。
好的,这就是场景,这是问题所在:
在这种情况下我们是否需要本地网络服务器?该应用程序以编程方式安装为浏览器外,数据库是本地的,并通过WCF-RIA连接。
如果是,哪个网络服务器就足够了?它应该通过客户执行的初始设置进行安装和配置。客户不必为配置网络服务器做任何事情。
有关此方案的任何其他想法或评论?还有其他任何可能的解决方案吗?
感谢您的帮助 德克
答案 0 :(得分:0)
答案 1 :(得分:0)
我无法为您的问题提供完整的答案,因为我们目前面临同样的问题。 (WPF不是跨平台的,某些客户端上非常具体的硬件)
但我可能会分享一些关于我们的厚银光客户端的想法:
独立“客户”的建筑思想:
根据您的要求,为每个通过消息(NServiceBus)与“main”-server进行通信的客户端实现服务器可能过度。但是如果你想使用客户端数据库,如果你想使用离线和Silverlight for ui,你应该考虑使用事件驱动架构。
结合“Event-Driven-Architecture”& amp; Silverlight的“CQRS”。但我不会把它当作一个更像灵感的蓝图。 http://www.slideshare.net/dennisdoomen/cqrs-and-event-sourcing-an-alternative-architecture-for-ddd