asp.net开发的调试方法集合
调试是写代码一共非常重要的步骤,掌握好调试的技巧对于编程有事半功倍的效果,下面是我总结的菜鸟用方法
1、关于HTML和JS的调试
JS曾经是我最讨厌的错误,因为大多数错误VS不报错,这是因为js是解释型语言,即加载一行解析一行...... 但有时候A函数的错误会影响到B函数运行不了(A函数在B函数下面啊)
(1) js函数更改后在页面执行没反应
有时会发现,当你改了JS函数后运行结果还是跟没改的一样,那是因为浏览器缓存的问题,只要刷新一下就行,如果发现还不行,就按开发者工具(F12)里面清理下缓存,这个保证没问题了
(2) 若发现JS函数不执行,而且又不报错,怎么办?开发者工具非常的强大,具体按开发者工具--》脚本--》启动调试,然后执行,运行时他就会报错了,而且这里面还能设断点,按F5运行。
(3) 在F12状态下能够直接修改HTML代码,能直接看到HTML的效果,如果是你要的效果,那就赶紧复制保存起来吧。
2、关于后台的调试
后台调试的方法非常的多,我也是只会皮毛,以后陆续额更新- -
(1)设断点这不用说,以过程为单位运行的按F10,以语句为单位的按F11,还有就是,别以为调试运行时是单向的,其实通过拖拉指针(不知道叫什么好)能去到任意的位置!!如果你已经确定错误的范围,,可以用try括起范围,然后在catch块里看到捕捉的异常,还能用即时窗口观察当前你想知道的变量值,监视是监视变量随着程序运行而变化,非常好用!
(2)即时窗口:即时窗口相当于控制台,能够获取和设置当前程序运行中的值,这样在调试时就能达到不修改程序又能修改变量的效果,举个例子,上传商品的状态一般默认是完整商品,假如调试的时候要把商品设置成不完整商品,不用即时窗口只能在程序赋值为item.status = "不完整商品"再继续调试,然后调试好了又要改回来,这样很麻烦,用即使窗口直接在窗口中item.status = "不完整商品"就能修改它的值,不用修改任何代码,另外即时窗口非常像浏览器的控制台。
(3)调用堆栈:当调试一些比较老的项目时,函数调用深度非常深而且命名又非常相近,可以把看看调用堆栈,新版的VS还能用图像表现出来,非常直观。
(4)假如有的时候用IIS挂了网站,又不能用VS调试的情况下,可以用VS的附加到进程,附加你想调试的进程,然后后台设断点,前台在你想设断点的位置加个debugger,其他都跟上面一样~
(5).net Reflector:如果错误是在dll里面的怎么办?可以安装插件reflector,然后设置dll为可调试,这样调试的时候就能进入dll内部!之前遇到过一个mysql.dll(公司封装的)错误老是返回链接失败,结果调试进去才知道是dll版本不对!
asp.net开发的调试方法集合的更多相关文章
- PyCharm Django项目开发的调试方法
下面介绍两种PyCharm Django项目开发的调试方法: 方法一: 1. 使用PyCharm 自带的django项目Debug工具, 当然前提条件是django项目环境已经搭建好了. 2. 在代码 ...
- Web开发常规调试方法与常见问题分析
一.Web项目基本原理 现在的web项目大都已经前后端独立开发与部署. 前后端独立开发,一般是前端与后端通过web接口(常见的有RESTful与websocket)文档进行交流.前端开发人员先更具业务 ...
- onvif规范的实现:onvif开发常用调试方法 和常见的segmentation fault错误
在前几篇中,虽然已经实现了rtsp视频流的对接,但是还要做的工作还非常多,onvif本来就是一个覆盖面非常广的一个协议,每一个功能都要填充大量的函数.而且稍不注意就会出现segmentation fa ...
- ios开发之--调试方法
概述 基本操作 全局断点 条件断点 开启僵尸对象 LLDB命令 概述 在开发项目的工程中,肯定会遇到各种各样的bug,且大多数的bug都和自己有关:那么在和bug斗智斗勇的过程中,如果能快速准确的一击 ...
- ASP.NET获取根目录的方法集合
编写程序的时候,经常需要用的项目根目录,自己总结如下: 1.取得控制台应用程序的根目录方法 方法1.Environment.CurrentDirectory 取得或设置当前工作目录的完整限定路径 方法 ...
- Web开发(调试方法 F12)
参考: 参考:MDN 调试HTML 参考:什么是浏览器开发者工具? 参考:检查和编辑页面与样式 工具参考:标记验证服务 工具参考:直接输入验证(直接输入HTML源码进行在线检查) 目录: 1.相关快捷 ...
- 【转】C#(ASP.Net)获取当前路径的方法集合
转自:http://www.gaobo.info/read.php/660.htm //获取当前进程的完整路径,包含文件名(进程名). string str = this.GetType().Asse ...
- BGFX 渲染引擎中着色器代码的调试方法
在实时渲染的图形开发中,着色器代码(Shader)越来越复杂,于是单纯的靠经验和不断试错的开发和调试方法早已不能满足实际需求.使用调试工具进行调试,成为开发中重要的方法.Bgfx 是一款跨平台.抽象封 ...
- Asp.net Mvc模块化开发之“开启模块开发、调试的简单愉快之旅”
整个世界林林种种,把所有的事情都划分为对立的两个面. 每个人都渴望的财富划分为富有和贫穷,身高被划分为高和矮,身材被划分为胖和瘦,等等. 我们总是感叹,有钱人的生活我不懂;有钱人又何尝能懂我们每天起早 ...
随机推荐
- 利用python进行数据分析3_Pandas的数据结构
Series #通过list构建Series ser_obj=pd.Series(range(10,20)) print(type(ser_obj))#<class 'pandas.core.s ...
- Java数据结构面试题
1.栈和队列的共同特点是(只允许在端点处插入和删除元素) 4.栈通常采用的两种存储结构是(线性存储结构和链表存储结构) 5.下列关于栈的叙述正确的是(D) A.栈是非线性结构B.栈是一种树状 ...
- 获取 request 中 json 数据
import java.io.IOException; import javax.servlet.http.HttpServletRequest; /** * request 对象的相关操作 * @a ...
- css flew 布局 解决父元素高度不固定,子级居中。
给父级添加 display: flex; justify-content: flex-start; align-items: center; 子级里的内容永远居中
- React初识整理(二)--生命周期的方法
React生命周期主要有7中: 1. componentWillMount() :组件将要挂载时触发 ,只调用1次 2. componentDidMount() :组件挂载完成时触发,只调用1次 3. ...
- 【Git版本控制】git---从已有分支拉出新的分支
参考博文:git---从已有分支拉出新分支
- 十:MYSQL中的事务
前言: 因为没有多少时间和精力,目前无法深入研究数据库中的事务,比如 但是,对于事务的一些基本知识,还是需要牢牢掌握的,做到了解事务的基本常识,在实际开发中能够理解各个持久层框架对事务的处理 一:是么 ...
- The Fourth Day
迭代器 迭代器:迭代的工具 .什么是迭代:指的是一个重复的过程,每次重复称为一次迭代,并且每次重复的结果是下一次重复的初始值 例: while True: print('====>'') l=[ ...
- 本地开发环境中部署已经写好的magento2.0项目
环境:apache2.4.25+php7.0.16+mysql5.7 (注意版本搭配,详细可以看magento2.0官网看配置) apache最好使用80端口,host文件配置本地虚拟域名 php.i ...
- 生物信息学练习2- Biom-format
The Biological Observation Matrix (BIOM) format http://biom-format.org/ biom-format有两种方式安装: 1. pytho ...