【发布时间】:2010-11-21 04:22:24
【问题描述】:
Silverlight 和 XBAP 有什么区别? 你会在哪里使用一个与另一个?
【问题讨论】:
标签: wpf silverlight ria xbap
Silverlight 和 XBAP 有什么区别? 你会在哪里使用一个与另一个?
【问题讨论】:
标签: wpf silverlight ria xbap
Silverlight 跨平台并在浏览器中运行其应用程序;它可以在任何使用网络浏览器的地方使用。
WPF 仅限 Windows,通常在桌面上运行其应用程序;它要求安装 .NET 框架。
Silverlight 可以被视为 WPF 的一个子集(尽管这在技术上并不正确)。它没有 WPF 所具有的功能集。但是,您在功能上失去的东西,却在可采用性方面获得了收益。
WPF 可以使用所谓的 XBAP 通过浏览器部署应用程序。不过,这与 Silverlight 不同; Silverlight 应用程序实际上集成到浏览器中,而 WPF 只是将浏览器用作其进程的主机。
有关 WPF 和 Silverlight 之间差异的更深入指南,我会参考 CodePlex 上的 this white-paper。
【讨论】:
历史课。 我们制作 WPF 最初是为了让设计人员在涉及基于 Windows 的应用程序时获得更多的动手能力,因为这是我们从 WinForms 世界中发现的一致反馈。我们生产 WPF,它借鉴了从 HTML 中发现的类似技术,但采用了我们称之为成熟方式 (XAML) 的更多方式。
然后,我们决定(根据客户反馈)在 x 平台和 x 浏览器机器上启用这一愿景的一个子集。结果,我们最终得到了 WPF/E(WPF Everywhere),后来更名为 Silverlight。
WPF 与 Silverlight。 简单的答案是,如果您想创建一个具有 x-platform / x-browser 范围的解决方案,那么 Silverlight 是您的最佳选择。不利的一面是您将无法突破浏览器中强加的沙箱,因此,如果它的应用程序乐于脱离它所居住的机器而生活,Silverlight 可以为您提供更合理的结果( Out Of Browser、Isolated Storage 等确实允许您比正常情况下更多地访问个人计算机。
然而,WPF 可用于深度访问,这意味着您想要访问 USB 驱动程序或与 .NET 等的替代技术交谈。原理相同,只是更深入的无限制访问。
您可以部署与 Silverlight 非常相似的 .XBAP 解决方案,但在访问方面提供了更深层次的访问...将其视为 WPF 和 Silverlight 之间的中间子项。
继续前进。 我们正在花费周期确保 WPF/Silverlight 在统一 API 等方面更多地融合,以使您能够升级/降低技术经验,而无需从根本上改变您的逻辑。我们今天已经制定了可以帮助您的框架(即 PRISM/MEF),但我们正在努力使这两种技术恢复到对大家的平等地位。
我们随时欢迎您提供反馈,并随时在 Twitter 上关注我们,通过@teamsilverlight 进行投诉/表扬。
Scott Barnes / Rich Platforms 产品经理 / Microsoft。
【讨论】:
从用户的角度来看,WPF 浏览器应用程序用户将需要安装比 Silverlight 运行时高得多的总 dot net 框架。
WPF 浏览器应用程序在 Windows 操作系统之外无法运行
您可以在 WPF 浏览器应用程序中使用更多功能(如带摄像头和灯光的真实 3D),而 Silverlight 则无法做到。
【讨论】:
最大的不同是沙盒。两者都是沙盒,但 WPF 浏览器应用程序(例如 XBAP)可以请求更多权限,但在 Silverlight 中您不能(根据设计)。
【讨论】: