代码改变世界

VS 2013中的新特性browser link

2014-04-11 08:51 JustRun 阅读(...) 评论(...) 编辑 收藏

Browser Link是连接VS和浏览器之间的通道。有了这个特性,web程序就能够和VS交互传递数据。这个特性在VS2013中是默认开启的。当开启了Browser Link, web程序运行的时候,就会注册一个HttpModule到asp.net的生命周期中,这个HttpModule的功能就是在每个输出的网页中,注入一段<script>脚本,这段脚本的作用就是负责VS IDE和网页间的通讯。

由于其作用的是注入的js脚本,所以使用这个特性不需要任何浏览器插件,对于任何浏览器都可以。当开启Browser Link功能的时候,VS就像是一个SignalR服务器。

4477.image_5F00_thumb_5F00_2C877D6C

 

通过下面这些问题,来进一步了解Browser Link:

1. Browser Link功能是什么样子?

在VS的工具栏上image  这个功能默认是开启的,当你启动web项目的时候,它就默认启动了。

 

2. Browser Link是如何工作的?

假设我们想看到Default.aspx在多个浏览器下是如何呈现的:

点击toolbox上的”Browse with…”然后选择多个浏览器(IE, Firefox, Chrome等). 当启动完成耨,, VS 会显示当前有3个浏览器连接.

然后我们修改Default.aspx文件,将 <h1> ASP.net </h1> 改成 ASP.NET 4.5. 然后点击refresh按钮或者Ctrl+Alt+Enter刷新这个页面. 它会立即刷新所有的浏览器.

b2

 

3. 如何判断Browser Link功能是否开启?

直接查看页面的源代码,检查页面html源码底部的script块. 如下图. 如果有下面的script代码,就说明Browser Link功能开启了。

b3

4. 如何关闭Browser Link?

  • 可以在toolbox上去掉勾选”Enable Browser Link”

b7

  • 还可以通过修改web.config文件来关闭Browser Link功能

修改appSetting中的vs:EnableBrowserLink”值为“false”, 这样就可以关闭Browser Link.

b87

5. Browser Link功能在哪些场合下使用?

Browser Link适合在多浏览器下调试页面的时候使用,这样就减少了在多浏览器下手动刷新的痛苦。

 

文章大部分翻译自 http://blogs.msdn.com/b/webdev/archive/2013/07/29/10430221.aspx