Wpf Silverlight和XBAP之间有什么区别?

Wpf Silverlight和XBAP之间有什么区别?,wpf,silverlight,ria,xbap,Wpf,Silverlight,Ria,Xbap,Silverlight和XBAP之间有什么区别? 您将在何处使用一个与另一个?Silverlight是跨平台的,并在浏览器中运行其应用程序;它可以在您使用web浏览器的任何位置使用 WPF是仅限Windows的,通常在桌面上运行其应用程序;它要求安装.NET framework Silverlight可以被视为WPF的一个子集(尽管这在技术上并不正确)。它没有WPF所拥有的功能集。然而,你在功能上失去了什么,你在可接受性上获得了什么 WPF可以使用所谓的XBAP通过浏览器部署应用程序。但这与Si

Silverlight和XBAP之间有什么区别?
您将在何处使用一个与另一个?

Silverlight是跨平台的,并在浏览器中运行其应用程序;它可以在您使用web浏览器的任何位置使用

WPF是仅限Windows的,通常在桌面上运行其应用程序;它要求安装.NET framework

Silverlight可以被视为WPF的一个子集(尽管这在技术上并不正确)。它没有WPF所拥有的功能集。然而,你在功能上失去了什么,你在可接受性上获得了什么

WPF可以使用所谓的XBAP通过浏览器部署应用程序。但这与Silverlight不同;Silverlight应用程序实际上集成到浏览器中,而WPF只是将浏览器用作其进程的主机


有关WPF和Silverlight之间差异的更深入的指南,我将参考CodePlex上的内容。

最大的差异是沙箱。两者都是沙盒,但WPF浏览器应用程序(如XBAP)可以请求更多权限,但在Silverlight中,您不能(按设计)请求更多权限

  • 从用户角度来看,要查看WPF浏览器应用程序,用户需要安装比Silverlight运行时高得多的total dot net framework

  • 除了windows操作系统,WPF浏览器应用程序将无法工作

  • 您可以在WPF浏览器应用程序中使用silverlight无法使用的更多功能(如带摄影机和灯光的real 3D)


  • 历史课。 我们制作WPF最初是为了让设计在基于Windows的应用程序中得到更多的实践,因为这是我们从WinForms世界得到的一致反馈。我们生产WPF,它借鉴了HTML中类似的技术,但采用了更成熟的方式(XAML)

    然后,我们决定(根据客户反馈)在x平台和x浏览器机器上实现这一愿景的一个子集。因此,我们最终得到了WPF/E(WPF Everywhere),后来改名为Silverlight

    WPF与Silverlight。 简单的答案是,如果您想创建一个具有x平台/x浏览器覆盖范围的解决方案,那么Silverlight是您的最佳选择。不利的一面是,您将无法打破浏览器中强加的沙箱,因此,如果它是一个乐于生活在它所居住的机器之外的应用程序,Silverlight可以为您提供一个更合理的结果(脱离浏览器、隔离存储等确实允许您比正常情况更多地访问个人机器)

    然而,WPF用于深度访问,这意味着您希望访问USB驱动程序或与.NET等的替代技术交谈。。同样的原则,只是更深入的无限制访问

    您可以部署与Silverlight非常相似的.XBAP解决方案,但在访问方面提供了更深入的功能。。。把它想象成WPF和Silverlight之间的中间产物

    继续前进。 我们正在花费周期确保WPF/Silverlight在统一API等方面更加融合,以使您能够在不必彻底改变逻辑的情况下提升/降低技术体验。我们现在已经有了框架(即PRISM/MEF),可以在这里帮助您,但我们正在努力使这两种技术恢复到同等水平

    随时欢迎反馈,欢迎通过@teamsilverlight在twitter上关注我们的投诉/表扬

    Scott Barnes/富平台产品经理/微软