在Mac上运行Silverlight浏览器外应用程序需要什么?

时间:2011-01-14 22:00:45

标签: c# .net silverlight macos

我认为标题是全部解释。我想为Windows开发.Net GUI应用程序,它也可以在Mac上运行而不需要太多额外的努力。我猜WPF在这里不是正确的选择。无论如何,我该怎么做才能使我的Silverlight浏览器外应用程序在Mac上运行?只需在该机器上安装Silverlight?

4 个答案:

答案 0 :(得分:4)

Silverlight的Out of Browser模型在Mac上运行良好,并且从一开始就是如此。只需开发应用程序并在Windows上进行测试,它基本上保证在Mac上具有相同的行为,除非您依赖于仅限Windows的功能(例如Silverlight 4受信任的应用程序中的COM互操作)。

编辑:为了进一步澄清我的答案,在Mac上运行OOB应用程序需要安装Silverlight Runtime之外的任何内容。因此,如果用户能够在浏览器中运行您的应用程序以执行安装序列,那么他们将能够安装应用程序OOB并使用它。

当然,这仅适用于Silverlight 3+,就像功能发布时一样。因此,如果最终用户安装了Silverlight 1或2,他们将无法安装您的应用程序,但他们可以升级到最新的运行时能够这样做(除非他们在PPC Mac上,因为它只支持Silverlight 1.但是现在大多数Mac都是英特尔,所以这并不值得一提。)

答案 1 :(得分:3)

根据Getting Started with Silverlight 3,在Windows和Mac上都可以使用OOB而无需额外的运行时。这是一个demo of the install process from channel9

就具体的挂断而言,这超出了我的经验。但听起来,一般来说,在OS X上运行SL应用程序并没有特殊要求。

答案 2 :(得分:3)

我构建了一个状态宽的Silverlight 4.0应用程序,它在浏览器和浏览器之外运行。根据我的经验,它在Mac上运行得很好,但我会说它并不完全相同。它非常接近,但安装体验存在细微差别,我在隔离存储中遇到了一些我在Windows机器上无法获得的错误。

总的来说,我肯定会说Silverlight是我用过的最好的跨平台开发平台。

答案 3 :(得分:2)

在Mac上为OOB构建了一个SL应用程序,我发现了一个给我带来困难的错误。如果您正在使用域服务,并且有一个尝试获取当前身份验证上下文以在服务器端提取userID的方法,则会失败。它适用于Windows OOB,但不适用于Mac OOB。

解决方法是将userID从客户端传递到需要它的域服务查询。

我使用标准的SL Business应用模板遇到了这个问题,并在SL论坛上与各种用户进行了确认。