2009-12-16 81 views
5

Silverlight Out of Browser技术和WPF ClickOnce表面上有相似之处。简单易用的部署,指定对底层主机的信任访问级别的能力等。Silverlight OOB与WPF ClickOnce

当我选择其中一个时需要考虑的关键问题是什么?为了更好地阐述它,我将在只运行Windows计算机的公司网络上部署LOB应用程序。

回答

1

您提到的信任访问主机,我认为排除Silverlight,除非你想运行SL4(测试版)。

我们最近经历了很多关于文件系统访问的讨论。 Silverlight 3或多或少地运行在部分信任沙箱中。您不能在应用程序隔离存储之外维护指向文件系统中文件的指针。这对我们来说是一个问题,因为我们希望用户能够使用该应用程序来引用文件系统的差异和结果。也就是说,您可以允许用户从系统上的任何位置加载和保存文件,但是您只需获取/或推送文件流,并且(据我所知)无法访问文件夹或文件路径信息。

Silverlight 4(测试版)支持您的应用程序以完全信任模式运行。然而,我还没有玩过这个游戏,也不知道游戏的效果如何。

+0

我听到Shawn Wildermuth的一次演讲,他说Silverlight 4可以运行在“高架信任”上,这与完全信任不同。我相信你上面提到的许多文件存储方案仍然适用于SL4,但是和你一样,我还没有玩过它并且无法确认。 – 2009-12-17 01:08:12

3

最大的问题是跨平台兼容性。如果你需要你在Mac和Windows上运行应用程序(不确定Silverlight在Linux中是否受支持),然后使用Silverligt。如果你想假设你所有的用户都在Windows机器上,那么去WPF。

很明显,WPF比Silverlight拥有更丰富的工具包,所以很可能Silverlight不是一种选择。如果我只是为窗户建设,但我知道WPF中我的工作会更容易。

+0

“显然,WPF拥有比silverlight更丰富的工具包” - 截至2011年,情况已不复存在。 – MalcomTucker 2011-07-17 13:01:50

+0

Mono Project在Linux中支持SilverLight,名为MoonLight。 – Pieces 2011-08-24 17:28:52

3

既然你是靶向运行Windows,两点值得一私人基础设施想着

  • WPF拥有更丰富的控件树,而Silverlight是紧凑的尺寸
  • 一组简化
  • WPF需要.NET框架本地安装,而Silverlight有自己的平台独立的基于浏览器的运行

当你的目标平台将有可能在最新的.NET Framework安装,使这最后一点实际意义,请英里发现任何更新框架[即.Net4.0和任何未来的更新]可能需要重启机器 - 这是需要持续有状态桌面的企业的主要痛点(即任何金融中的任何东西,如银行和交易]。


与所有问题一样,您的要求,而不是技术,应该通知您的解决方案。 :)

1

在与很多同时使用Silverlight和WPF的人交谈时,即使那些对Silverlight感到兴奋并强烈推动的人们,我也会相当强烈地听到很多说法,如果你要独自开发对于一个完全信任的Windows环境来说,WPF是明智的选择。

这并不是说Silverlight是劣质产品,或者说没有多少次Silverlight将会是明显的赢家。但是当你说“我将在只运行windows电脑的公司网络上部署LOB应用程序”时,听起来WPF就是清晰的赢家。

可能决定在预期所有伟大的新的OOB功能SL4的Silverlight路线。我甚至听说过SL和WPF最终会合并的传言,所以它甚至可能不重要,对吧?那么,我认为如果你使用Silverlight,你会发现,你认为的一些高级功能并不像你期望的那样。例如,SL4将能够运行在“高架信任”(不是完全信任),并且您可能会发现这个限制令人沮丧,因为您的许多代码库已经在Silverlight中。

当然,请继续关注Silverlight,但对于您目前的业务案例,WPF可能是最合适的。