Javascript Silverlight HTML-JS-DOM桥:真实世界的用例?

Javascript Silverlight HTML-JS-DOM桥:真实世界的用例?,javascript,silverlight,web-applications,rich-internet-application,Javascript,Silverlight,Web Applications,Rich Internet Application,我在网上看到了很多关于Silverlight如何利用线程、操作DOM、实现类似Comet的功能等任务来增强网页的概念验证教程 这一切似乎都很有趣,但是,有没有人有任何真实世界的用例可以分享,因为我似乎找不到很多。当然。我使用HTMLDOM交互有几个原因 首先,将现有ASP.NET应用程序迁移到Silverlight时。在我们使用的体系结构中,应用程序非常基于AJAX,有大量回调。我们没有为Silverlight重新发明轮子,而是能够使用DOM交互提供一个桥接器,以便Silverlight控件可以

我在网上看到了很多关于Silverlight如何利用线程、操作DOM、实现类似Comet的功能等任务来增强网页的概念验证教程


这一切似乎都很有趣,但是,有没有人有任何真实世界的用例可以分享,因为我似乎找不到很多。

当然。我使用HTMLDOM交互有几个原因

首先,将现有ASP.NET应用程序迁移到Silverlight时。在我们使用的体系结构中,应用程序非常基于AJAX,有大量回调。我们没有为Silverlight重新发明轮子,而是能够使用DOM交互提供一个桥接器,以便Silverlight控件可以以类似的方式回调。这意味着使用ASP.NET安全性和viewstate信息从服务器获取信息,并将其拉入Silverlight应用程序。我们已经以JSON格式返回了数据,因此可以直接解析回Silverlight应用程序

另一个例子是与第三方控件和服务的交互。例如,Google Analytics提供了丰富的页面跟踪功能。本项目提供了一个主要示例:

在应用程序可以集成的地方,即使您在Silverlight中运行,您基本上也在跟踪单击、操作和页面视图

我使用过的另一个地方是Silverlight没有被用作应用程序,而是更多地用作页面上的一个部分或控件。虽然Silverlight控件可以使用本地通信相互通信,但这不适用于其他非Silverlight控件。通过使用HTML-DOM桥,您可以轻松地在组件之间构建基于JavaScript的通信。例如,Silverlight控件可能是一个交互式世界地图,允许您浏览到某个区域。当您选择区域时,它会引发一个JavaScript事件,其他控件会侦听该事件并基于该原因进行更新

您还可以将Silverlight用作类似Captcha控件的控件,其中表单使用DOM桥验证用户输入Silverlight应用程序的有效性

我见过标记云应用程序,其中Silverlight控件使用DOM交互遍历当前页面,然后基于此生成动画标记云


希望这些能够提供一些真实的例子。

我使用DOM桥的一个目的是引发事件。承载我的应用程序的html页面订阅这些事件并做出相应的反应

例如,我的应用程序接收并显示来自WCF Web服务的销售数据。当数据更改时,将引发一个事件,以便页面的其余部分可以显示其他内容

如果您不能使用ASP.Net,在Silverlight中从Web服务请求和接收数据要比在Javascript中容易得多,也不容易出错(而且速度更快,因为您可以使用优化的“二进制xml”编码器)


我认为,当您发布silverlight应用程序以嵌入任意网站时,DOM bridge最为有用。在这些网站中,您无法对后端环境进行假设,但需要提供与SL应用程序交互的能力。

感谢您提供的信息。网络上的所有教程似乎都集中在基本的“从silverlight调用JS,反之亦然”上,几乎没有真实的例子。