Silverlight超出浏览器与多目标WPF

时间:2011-04-15 17:17:48

标签: wpf silverlight prism out-of-browser iis-express

我正在开始一个主要是Silverlight Web应用程序的新项目。但是,它还需要作为独立的桌面应用程序运行。

我打算将这个项目基于Prism 4.0。它为Silverlight和WPF之间的共享代码提供了指导,以实现“多目标”应用程序。如果我理解正确,我可以使用MVVM为相同的视图模型和底层服务创建单独的silverlight和WPF视图。

我想知道如果创建额外视图真的值得额外工作,那么现在可以将Silverlight作为浏览器外应用程序运行。我不能用IIS Express捆绑我的应用程序的桌面版本并在本地托管silverlight应用程序吗?这似乎是一件相当容易的事情。我确信在WPF中我可以做一些视觉上引人注目的事情,但在我的情况下 - 网络版本是90%的使用率,因此焦点显然是关于silverlight。如果我们必须维护两组不同的视图,我可以看到WPF版本定期落后于silverlight版本。

在数据方面,我已经发现我可以配置Entity Framework以使用SQL CE 4.0作为桌面版本。即使我们使用WPF,我也会这样做,所以它实际上只是表示层。

回顾一下,问题很简单:IIS Express + Silverlight OOB是否可以替代Silverlight和WPF的多重目标?

2 个答案:

答案 0 :(得分:2)

只要您可以使用沙盒限制,只有Silverlight版本设置才会更好。不太明显的测试代码总是很好的。您尚未指定应用程序正在执行的操作,但只要它不需要访问(大多数)本地设备,不受限制的文件系统访问或任何其他SL4沙箱限制(您也可以使用COM互操作程序) ,但是哎哟),您应该可以使用浏览器内外部署设置来完成一个版本的应用程序。

答案 1 :(得分:1)

浏览器应用程序中的Silverlight听起来非常适合您的需求。您可能希望查看SterlingDB之类的内容以进行本地数据存储,而不是尝试捆绑IIS express和SQL CE。如果您正在调用Web服务,则在启用“完全信任”标志的情况下运行的浏览器外应用程序不具有跨域限制。这样,你的应用程序将是纯银光,你的部署和放大更新方案非常简单(通过网站单击安装)。