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 matplotlib.pyplot对图像进行绘制
imshow()是对图像进行绘制 imshow()函数格式为: matplotlib.pyplot.imshow(X, cmap=None) X: 要绘制的图像或数组. cmap: 颜色图谱(colo ...
- mysql 特定查询条件下导致的大海捞针
order表: order type gmt_create type 取值: 0,1 其中0非常多,1非常少. 当查询条件里 select * from order where type=0 an ...
- 人脸识别中的检测(在Opencv中加入了QT)
#include <opencv2/highgui/highgui.hpp> #include <opencv2/imgproc/imgproc.hpp> #include & ...
- netstat Recv-Q和Send-Q详解
http://blog.csdn.net/sjin_1314/article/details/9853163 通过netstat -anp可以查看机器的当前连接状态: Active Interne ...
- http常用状态吗以及分别代表什么意思?
http常用状态码: 状态码 定义 说明 1xx 信息 街道请求继续处理 2xx 成功 成功的收到.理解.接受 3xx 重定向 浏览器需要执行某些特殊处理一完成请求 4xx 客户端错误 请求的语法有问 ...
- hihoCode-1043-完全背包
我们定义:best(i,x)代表i件以前的物品已经决定好选择多少件,并且在剩余奖券x的情况下的最优解. 我们可以考虑最后一步,是否再次选择i物品,在不超过持有奖券总额的情况下.上面的第二个式子的k是大 ...
- 力扣题目汇总(重复N次元素,反转字符串,斐波那契数)
重复 N 次的元素 1.题目描述 在大小为 2N 的数组 A 中有 N+1 个不同的元素,其中有一个元素重复了 N 次. 返回重复了 N 次的那个元素. 示例 1: 输入:[1,2,3,3] 输出:3 ...
- (转)UIPanGestureRecognizer
UIPanGestureRecognizer是UIGestureRecognizer类的一个扩展类,其扩展类有UITapGestureRecognizer,UIPinchGestureRecogniz ...
- 降维算法-PCA主成分分析
1.PCA算法介绍主成分分析(Principal Components Analysis),简称PCA,是一种数据降维技术,用于数据预处理.一般我们获取的原始数据维度都很高,比如1000个特征,在这1 ...
- MFC下拉框
在函数OnInitDialog()中添加一下语句可以添加选项到下拉框中 m_comboBox.AddString(_T("ALKATIP Basma Tom")); m_combo ...