asp.net mvc 之旅—— 第四站 学会用Reflector调试我们的MVC框架代码

我们知道,现在能调试.net程序通常有两个,第一个是ILSpy,还是一个是Reflector,这两个小反编译软件算是我们研究底层代码中所拥有的一把

锋利小尖刀~~~,比如你看到的ILSpy这样的界面图:

但是呢!!! 用过ILSpy的同学大概都知道,这个毛软件是调试不了web代码的。。。也只能调试调试带有pdb符号的console之类的程序。。。悲剧吧!!!

但是白骨精的我们要学好mvc怎么能调试不了web代码呢?这可绝对不行。。。办法总是会有的。

一:下载Reflector VS 插件

那怎么调试呢?我们可以下载一个Reflector的vs插件,我可以带你到nuget上面找找看嘛。。。绝对让你眼前一亮。

找到之后,接下来就可以点击下载,完成之后,vs会提示你重启,比如这样:

当我再重启的时候,可以看到在menu上面多了一个reflector item,是不是好吊的样子??? 不过不要先着急,我们要先生成几个dll的pdb文件,有了

这吊毛,我们就可以调试这些dll。。。不过能调试的当然是绝大一部分哦。。。

不过你要勾选哪些debug,这些肯定是需要看你项目啦~~~ 你要调试哪个,你就Generate 哪个。。。是不是很简单,然后我们点击Continue按钮,

接下来等待生成好之后,我们就可以点击某一个类,比如我特别想看Controller类的源代码。。。比如下面这样:

ok,现在Controller类的源代码都出来了,然后我准备调试Controller的入口函数【beginExecute】,看看能不能断下,嘿嘿~~~

好了,reflector已经介绍完了,还有最后一点。。。reflector是收费版本的!!!,但是!!! 茫茫云海中早就有破解版等

待你去找寻~~~

时间: 2024-07-30 19:38:45

asp.net mvc 之旅—— 第四站 学会用Reflector调试我们的MVC框架代码的相关文章

学会用Reflector调试我们的MVC框架代码

我们知道,现在能调试.net程序通常有两个,第一个是ILSpy,还是一个是Reflector,这两个小反编译软件算是我们研究底层代码中所拥有的一把 锋利小尖刀~~~,比如你看到的ILSpy这样的界面图: 但是呢!!! 用过ILSpy的同学大概都知道,这个毛软件是调试不了web代码的...也只能调试调试带有pdb符号的console之类的程序...悲剧吧!!! 但是白骨精的我们要学好mvc怎么能调试不了web代码呢?这可绝对不行...办法总是会有的. 一:下载Reflector VS 插件 那怎么

asp.net mvc 之旅 —— 第六站 ActionFilter的应用及源码分析

这篇文章我们开始看一下ActionFilter,从名字上其实就大概知道ActionFilter就是Action上的Filter,对吧,那么Action上的Filter大概有几个呢??? 这个问题其实还是蛮简单的,因为我们听说Mvc本身就是一个扩展性极强的框架,自然就是层层有拦截,层层有过滤,对吧,比如我们看到的如下Controller类. public abstract class Controller : ControllerBase, IActionFilter, IAuthenticati

asp.net mvc 之旅—— 第三站 路由模板中强大的自定义IRouteConstraint约束

我们在写mvc的时候,经常会配置各种url模板,比如controller,action,id 组合模式,其实呢,我们还可以对这三个参数进行单独的配置,采用的方式自然 就是MapRoute中的constraints属性. 一:简单的正则匹配 正则匹配算是最最简单的一个方法,比如针对上面路由中id的值,我可以用正则进行限定,也就是说id只能是整数,这个可以做到吗???对这么扩展性极强的mvc, 当然可以做到,比如我下面写的这样: routes.MapRoute( name: "Default&quo

Sql Server之旅——第四站 你必须知道的非聚集索引扫描

非聚集索引,这个是大家都非常熟悉的一个东西,有时候我们由于业务原因,sql写的非常复杂,需要join很多张表,然后就泪流满面了...这时候就 有DBA或者资深的开发给你看这个猥琐的sql,通过执行计划一分析...或许就看出了不该有的表扫描...万恶之源...然后给你在关键的字段加上非 聚集索引后...才发现提速比阿斯顿马丁还要快...那么一个问题来了,为什么非聚集索引能提速这么快...怎么做到的???是不是非常的好奇??? 这篇我们来解开神秘面纱. 一:现象 先让我们一睹非聚集索引的真容,看看到

Javascript之旅——第四站:parseInt中要注意的坑

前些天信用卡站点要接入一个新功能,不过还真比较坑爹,asp站点,大家都知道信用卡的背面是有一个有效期的,在对接银行中这个信息 一定是要传给银行做数据校验,用户在语音输入信用卡有效期后,系统会做一个有效期判断,为了不必要的麻烦,就是判断过期时间一定不能在 一个月内,由于输入的年月日在三个文本框中,再加上我嫌转成时间麻烦,就索性直接拿年,月,日的文本内容直接强转成int类型来判断,此为 背景. 说了这么多,终于说到文章主题了,我们知道有效期有这样的:2015-09-20,我就毫不犹豫的从月文本框中拿

asp.net mvc 之旅—— 第一站 从简单的razor入手

原文:asp.net mvc 之旅-- 第一站 从简单的razor入手 记得2011年mvc3刚出来的时候,我们就有幸将 mvc3 用在我们团购项目上,当时老大让我们用一个星期时间来熟悉mvc,幸好园子里面的老朋友DR 正在写mvc3系列,也恭喜这个系列文章被整理成专题供后来者学习,详见:http://www.cnblogs.com/highend/archive/2011/08/04/aspnet_mvc3_ contents.html,2013年进携程的时候,也开心的看到公司正在将webfo

Sql Server之旅——第十四站 深入的探讨锁机制

原文:Sql Server之旅--第十四站 深入的探讨锁机制 上一篇我只是做了一个堆表让大家初步的认识到锁的痉挛状态,但是在现实世界上并没有这么简单的事情,起码我的表不会没有索引对吧,,,还 有就是我的表一定会有很多的连接过来,10:1的读写,很多码农可能都会遇到类似神乎其神的死锁,卡住,读不出来,插不进入等等神仙的事情导致性 能低下,这篇我们一起来探讨下. 一: 当select遇到性能低下的update会怎么样? 1. 还是使用原始的person表,插入6条数据,由于是4000字节,所以两条数

构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(31)-MVC使用RDL报表

原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(31)-MVC使用RDL报表 这次我们来演示MVC3怎么显示RDL报表,坑爹的微软把MVC升级到5都木有良好的支持报表,让MVC在某些领域趋于短板 我们只能通过一些方式来使用rdl报表. Razor视图不支持asp.net服务器控件,但是aspx可以,所以用户其实可以通过aspx视图模版来显示rdl报表或者水晶报表. 我是有强迫症的人,我不喜欢在众多razor视图中,让aspx视图鹤立鸡群,所以这节主要

Javascript之旅——第十站:为什么都说闭包难理解呢?

原文:Javascript之旅--第十站:为什么都说闭包难理解呢? 研究过js的朋友大多会说,理解了js的原型和闭包就可以了,然后又说这些都是js的高级内容,然后就又扯到了各种神马的作用域...然后不少 人就会被忽悠的云里雾里...下面我也试着来说说闭包,看我说的这个是否浅显易懂... 一:闭包含义 闭包是个专业词汇,这样才能显得在js中是高大上的货色,官方定义我这里就不敢修改它,定义如下:就是有权访问另一个函数作用域的变量的函数. 二:一个简单的场景 上面的定义大概也能看得懂,但是不知道为什么