【问题标题】:Question about using Silverlight for both web and desktop application关于将 Silverlight 用于 Web 和桌面应用程序的问题
【发布时间】:2009-12-11 21:53:04
【问题描述】:
我想开始使用 Silverlight 为桌面和 Web 制作一个小项目(没什么花哨的)。以下是我的问题:
我需要 Silverlight 4.0 还是 3.0 具有浏览器外的功能?这两个版本之间是否有重大变化?
除了 Silverlight 之外,我还有哪些其他选择?我还在考虑将 Silverlight 用于在线部分,并将单独的 WPF 项目用于桌面。我没有任何 Flash/Flex/Air 经验。除了 .NET,我还有一些 C++、Java 和 PHP 方面的经验。
有人有这方面的经验吗?我知道这是新技术(测试版!),所以我期待着一路上的颠簸。不过,如果我只能拥有一个代码库,那就太棒了。
【问题讨论】:
标签:
wpf
silverlight
silverlight-4.0
【解决方案1】:
silverlight 3 具有浏览器外功能。
除了 silverlight,我能想到的唯一选择是(虽然有点不同)Java Web Start 技术 - 从 Web 服务器下载的 Java 桌面应用程序。
我在一个项目中使用过,没有任何问题。同样的silverlight控件出现在浏览器中,可以一键安装为桌面应用程序。几行代码就足以实现这一点。这里是some tutorial
【解决方案2】:
回答你的第一个问题:
虽然 Silverlight 3 确实具有浏览器外的功能,但它们非常有限。使用 Silverlight 4,您可以编写完全信任的桌面应用程序。
正如 Shawn Wildermuth 在this blog 帖子中指出的那样:
在 OOB 中,您的应用程序仍在浏览器中运行(在 Windows 上托管 IE 和在 Mac 上托管 Safari 的窗口)。它仍然与浏览器应用程序存在于同一个安全沙箱中。
这意味着您的应用程序将具有与在浏览器中运行时相同的限制。