• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >ASP.NET > Visual Studio Debugger七个鲜为人知的小功能

Visual Studio Debugger七个鲜为人知的小功能

作者:永远薰薰 字体:[增加 减小] 来源:互联网 时间:2018-08-20

永远薰薰 通过本文主要向大家介绍了Visual,Studio,Debugger等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

Visual Studio debugger是一个很棒的调试工具,可以帮助程序猿们快速地发现和解决问题。这里给大家简单介绍一下VS调试工具中的七个鲜为人知的小功能。

1. 一键跳转到指定语句

调试过程中经常需要拖拽黄箭头,使特定语句执行或者不执行。常规方法就是使用鼠标直接拖拽。

在Visual Studio 2017 15.3预览版中,有一个更简单地跳转到目标行的方法:在目标行盘旋鼠标指针,出现绿色竖线右箭头图标后,按住CTRL后鼠标左键点击,就把调试黄箭头移过去了,再点击调试下一步或者F5就直接在指定行运行了。

2. 添加指定实例值的断点

有时候某个实例的属性值会莫名其妙的变化,当我们需要知道为什么变化的时候,会在属性代码中添加断点,但是这会对所有实例都生效。

在调试的时候,可以使用Make Object ID和Conditional Breakpoint功能去添加指定实例的断点,具体如下:

首先我定义了一个类,并初始化了两个对象,更改PointX的值,想要添加实例a的PointX值的改变断点

在调试过程中,右击实例a选择Make Object ID

这时实例a被赋值到$1中,在要添加的断点出右击选择Conditions…

添加$1 == this代码后,再运行程序,则在实例a属性改变的时候断点生效,实例b属性改变的时候不生效了。

注意Make Object ID记录的是内存中对象的地址,下次调试的时候就改变了,需要重新设置。

3. 重新附加进程

Attach to Process是大家经常需要用的功能,Visual Studio 2017中有一个新的选项叫做Reattach to Process,可以方便大家重新附加到最近一次附加到的进程上。

先附加到一个进程上,点击Stop Debugging,然后再点击Debug就能看到里面的Reattach to Process选项了。

4. 显示所有的线程

在调试过程中,调试工具栏中有一个新的选项叫做:Show Threads in Source。点击后即可在有线程停止的代码行前显示一个图标,鼠标停留在图标上显示线程,右击图标可以显示可用操作。

注意这个功能可能影响调试效率,如果不需要的话建议默认关闭。

5. 临时禁用指定断点

当进行多线程调试的时候,可以利用Disable Breakpoint功能临时禁用指定断点,防止其它线程由于断点中断,影响当前线程的调试工作。

6. 查看所有线程的调用栈

调试过程中,在Command Window中输入”Debug.ListCallStack -AllThreads”,即可看到所有线程的调用栈。

也可以用WinDBG命令”~*k”:

7. 使用无负面效果的方法评估

有时候可能需要在调试Watch窗口中查看一个方法的返回值,但是真正执行这个方法的时候可能会产生负面效果,这里可以在Watch窗口输入的时候添加”, nse”来避免负面效果,是”No Side Effects”的缩写。例子如下:

刚开始Add执行了六次,所以testList总数是6,

现在想查看Add当前执行的返回值,可以在Watch窗口输入Add(1),但是这会产生负影响,改变testList的值为7,

因此如果想不影响testList的原始值,则需要加上”, nse”,如下显示是8,但是testList原始值未变还是7:

介绍到此为止,有你喜欢的调试小功能么,欢迎来评论~

PS:只是介绍,不喜勿喷。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Visual Studio寻找C#程序必要的运行库文件
  • 使用Visual Studio 2017写静态库
  • Visual studio 2017添加引用时报错未能正确加载ReferenceManagerPackage包的解决方法
  • Visual Stduio 2010开发环境搭建教程
  • Visual Studio 2017安装失败的解决方法
  • Visual Studio 2017创建.net standard类库编译出错原因及解决方法
  • Visual Studio 2017设置版权的方法
  • Visual Studio 2017无法加载Visual Studio 2015创建的SharePoint解决方法
  • Visual Studio ASP.NET Core MVC入门教程第一篇
  • Visual Studio 2017中找回消失的“在浏览器中查看”命令

相关文章

  • 2017-05-11在ASP.NET中,设置Session的过期时间的方法
  • 2017-05-11Asp.NET调用百度翻译的方法
  • 2017-05-11用DataReader还是DataSet?
  • 2017-05-11ASP.NET MVC:Filter和Action的执行介绍
  • 2017-05-11Windows Server 2012 R2 或 2016无法安装.Net 3.5.1
  • 2017-05-11第一次用.net2.0 LOGIN登陆控件的困惑和解决方法
  • 2017-05-11asp.net 通过aspnetpager为DataList分页
  • 2017-05-11在ASP.NET 2.0中操作数据之四十六:使用SqlDataSource控件检索数据
  • 2018-08-20VS 2015开发跨平台手机应用的配置教程
  • 2017-05-11ASP.NET操作MySql数据库的实例代码讲解

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • ASP.NET MVC 导出Word报表
    • asp.net+jquery Gridview的多行拖放, 以及跨控件拖放
    • 读取TXT文件内容的方法
    • 有关于JSON的一些资料
    • .net开发微信公众平台实例教程
    • ASP.NET中将声音文件添加到资源中并进行播放的方法
    • ASP.NET MVC5 实现分页查询的示例代码
    • Asp.net中安全退出时清空Session或Cookie的实例代码
    • log4net创建系统日志的详细步骤
    • 微信公众平台开发教程(八)Session处理问题

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有