Silverlight作为桌面应用程序?

时间:2012-03-21 19:55:05

标签: c# asp.net wpf silverlight

这可能听起来很糟糕,但是如何让Silverlight作为桌面应用程序运行?或者我应该使用WPF?有什么银光会带来WPF吗?从设计和实际编码的角度来看。

2 个答案:

答案 0 :(得分:3)

这取决于你的意思 - 你的意思是你想要一个互联网提供的应用程序,但你不希望它必须在浏览器中?如果是这样,那么你可以在浏览器之外使用Silverlight。

你的意思是你真的想要一个更像厚客户端的东西 - 比如传统的exe吗?如果是这样,你将无法使用Silverlight。 Silverlight预计将成为一个分布式应用程序,因此它缺少一些您希望在桌面应用程序中拥有的东西。

示例:

  • Silverlight没有Ado.net(无法直接查询表 - 它希望您使用Web服务来检索数据)(Silverlight也没有实体框架)

  • Silverlight应用程序希望以部分信任方式运行 - 您必须做一些额外的工作才能让Out Of Browser以完全信任的方式运行,并且由于默认情况下它以部分信任方式运行,因此您无法获得文件系统访问权限。 (对于Web应用程序来说很好,因为服务调用会导致您的数据处理)

Silverlight运行时是与.Net运行时不同的动物。在大多数情况下,Silverlight是.net的一个子集(存在一些差异,特别是在XAML功能中),因此在运行Silverlight时使用的是不同的运行时。 (因此,Silverlight中不支持即将推出的.net 4.5功能)。

所有这一切,Silverlight对于互联网/内联网多层应用程序来说是一个非常好的解决方案,它只是应用程序必须是多层的。

答案 1 :(得分:2)

Silverlight只会带来很多限制......

但最新版本仍支持“Silverlight out of Browser”和“Silverlight full tr​​ust”

您获得的是一个仍然可以在Web上运行的代码库(通过一些调整)。