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模块化开发之“开启模块开发、调试的简单愉快之旅”
整个世界林林种种,把所有的事情都划分为对立的两个面. 每个人都渴望的财富划分为富有和贫穷,身高被划分为高和矮,身材被划分为胖和瘦,等等. 我们总是感叹,有钱人的生活我不懂;有钱人又何尝能懂我们每天起早 ...
随机推荐
- git 添加 ,密匙
转载此处 https://blog.csdn.net/xiayiye5/article/details/79652296
- 数组初始化 和 vector初始化
] = {}; 整个数组都初始化为0 vector<); 整个vector初始化为1 如果你定义的vector是这样定义的: vector<int> B; 去初始化,千万不要用: ; ...
- java实现中文或其他语言及标点符号等转换成unicode字符串,或unicode的16进制码转换回文字或符号等
package org.analysisitem20181016.test; public class Code128Test2019052201 { public static final Stri ...
- c++ 递归求一个数的阶乘
#include <iostream> using namespace std; long factorial(int value); int main() { int value; co ...
- Codeforces Round #510 #A
http://codeforces.com/contest/1042/problem/A 题目大意就是: 现在公园里有n个长椅(要多长有多长),第i个长椅上有a[i]个人(泰山崩于前而不乱),现在又有 ...
- 【DB_MySQL】MySQL重要知识点
MySQL中的select语句 各子句的执行顺序 SELECT语句的处理过程 1. FROM 组装数据来源 2. WHERE筛选元组 3. GROUP BY 将满足条件的元组进行分组 4. HAVIN ...
- docker build no such file or directory
在我构建新的镜像的时候, 发生 了 no such file or directory 的错误. 这个错误找了半天, 没头绪, 后来灵光一现, 原来是我的文件夹名字写错了 我的目录结构是这样的 [ ...
- React碰到v-if
最近在重构公司老项目,由于本人以前的技术栈是vue, 换工作后发现现在公司的技术栈是react, 所以重构的过程是及其痛苦.加之项目又是几年前的老项目,不敢大改,比葫芦画瓢比比皆是.本文就介绍下遇到的 ...
- Python_编程题集_001_词法解析
1.词法解析: 我的是名字是ths,今年18岁 语法分析后得到结果如下: 数字:18 中文:我的名字是 今年 岁 拼音:ths 符号:,. 请编写程序实现该词法分析功能 string模块解: impo ...
- Python学习网站推荐
B站是目前本人看到的最好的免费学习Python的网站 黑马程序员- https://space.bilibili.com/37974444?spm_id_from=333.338.viewbox_re ...