检测Silverlight服务器端

时间:2009-08-08 14:54:04

标签: javascript silverlight

我有一个相当复杂的Silverlight横幅,有插页式广告,悬停,活动区域等。这可以在Silverlight 1/2中使用。

由于我是网络标准粉丝,我希望能够容纳没有Silverlight的用户,并在需要时切换到每个横幅的等效JavaScript驱动版本。

为方便起见,我希望能够在服务器端执行此操作,因此我可以相应地显示/隐藏asp:Panel。这将让我轻松地在Silerlight.non Silverlight环境之间进行测试,因为我可以模拟非SL的体验。

有没有办法让我这样做?我没有注意到SL宣布自己是UserAgent的一部分,但我们知道无论如何我们无法依赖它。我是否仅限于依赖JavaScript并以某种方式使用它告诉服务器我需要非SL内容?

1 个答案:

答案 0 :(得分:2)

在ASP.NET / C#中,您可以调用IsVersionSupported方法

bool isSupported = host.IsVersionSupported("2.0.30908.0");

如果未安装插件,则应返回false。

或者,您可以从客户端或服务器调用JS方法,具体取决于您希望它如何工作。 isInstalled方法可在Silverlight.JS文件中找到。 JavaScript代码:Silverlight.isInstalled(null);