调试mvc 源码【转:http://www.cnblogs.com/wucj/archive/2013/06/09/3128698.html】

最近在研究asp.net mvc的源码,于是在想,既然提供了源码,那我们如何进入源码调试了?在网上找了一些调试的方法,试了几个都不行,于是折腾了一上午,终于弄出来了,下面看看我的操作步骤。

    一:准备工作。本机安装的是vs2012,打了update1的补丁包,如图

    

    接下来下载asp.net mvc的源码,地址是:http://aspnetwebstack.codeplex.com/ ,下载之后解压出来即可。

  二:有两种方式可以调试源码,分别是:1)直接在源码的解决方案下新建一个asp.net mvc4应用程序 2)新建一个单独的asp.net mvc4解决方案 。两种方案我都尝试了,不过在这里我就演示方法2。

  三:修改System.Web.Mvc的版本号,编译。

    我们打开如下图所示的文件,可以看到其最新的版本是5.0.0.0

    

    

    在这里,我们将5.0.0.0 修改成为4.0.0.1 。这个版本号你可以修改为任意值,最关键的是要将你修改的值正确的填写在webconfig文件里面。

  四:修改新建的mvc解决方案里面webconfig中的版本号,重新注册公钥值。

    找到解决方案里面根目录下的webconfig文件,如下图操作。

    

    

    接下来就是用vs2012自带的命令行工具注册公钥值了,命令是:sn.exe -Vr *,31BF3856AD364E35

    

    看到这样的命令就是注册成功了。将这个公钥值按照上面那种图那样修改。

  五:修改View文件夹里面webconfig中的一些版本号

    

    

    

  六:引用源码中相应的dll

    先将新建的解决方案中如下dll移除掉。

    

    引用新的dll

    

  七:到这里我们就可以调式代码了

    因为asp.net mvc 也是运用了管道模型,也就是这个MvcHandler类处理请求,并通过httpmodule将结果返回给客户端。我们在Global.asax里面的 Application_Start加入断点,在MvcHandler的类中开始的位置加入断点,如下图。

    

    

    到这里,我们已经成功的进入了源码调试了。

  八:小插曲,将根目录下的webconfig里面的节点修改如下,不然网页显示有错误。

    

    

    按照如上修改,网页就可以正常显示了。

   总结:上面的做法是新建一个解决方案,然后调用dll。那么在源码的解决方案下新建一个项目,具体修改方发如上操作。

时间: 2024-08-28 16:20:13

调试mvc 源码【转:http://www.cnblogs.com/wucj/archive/2013/06/09/3128698.html】的相关文章

VS2013 调试MVC源码[MVC5.2.3+MVC4Web项目]

1.目前MVC源码版本为5.2.3,下回来后用VS2013打开,把System.Web.Mvc项目的版本号改为4.0.0.1 2.在解决方案下建一个MVC4项目,.NET选4.5,修改根目录以及Views下的Web.Config: 把Mvc版本改为4.0.0.1,把Razor,WebPages等改为3.0.0.0,总之,要把Web.Config涉及到: System.Web.Mvc System.Web.Razor System.Web.WebPages System.Web.WebPages.

十步让你调试mvc源码

1.下载 mvc 当前版本的源码,地址:http://aspnetwebstack.codeplex.com/SourceControl/latest 2.编译源码,参考:http://www.cnblogs.com/tq1226112215/p/5264355.html 3.用 vs2013 或更高版本打开项目,卸载 test 文件夹下所有项目,同时卸载 src 文件夹下 WebApiHelpPage 和 WebApiHelpPageVB 这两个项目,编译完成 4.创建 src2 解决方案文件

(转)Jquery最实用的实例及源码(http://www.cnblogs.com/kingfly/archive/2012/12/05/2802539.html)

1:窗口拖动 http://jqueryui.com/resizable/#max-min 2:导航条前后顺序拖动 http://jqueryui.com/sortable/ 3:类似百度首页板块顺序拖动http://jqueryui.com/sortable/#portlets 4:选择日期http://jqueryui.com/datepicker/#default 5:不带遮罩的弹出框(官网上第3个例子中有带遮罩)http://jqueryui.com/dialog/#default 6:

Jquery 操作Html 控件 CheckBox、Radio、Select 控件 【转】http://www.cnblogs.com/lxblog/archive/2013/01/09/2853056.html

Jquery 操作Html 控件 CheckBox.Radio.Select 控件 在使用 Javascript 编写前台脚本的时候,经常会操作 Html 控件,比如 checkbox.radio.select,用 Jquery 库操作其他会方便很多,下面用Jq对这些控件的操作进行一个全面的代码总结. 一.Jquery 对 CheckBox 的操作: <input id="ckb1" name="ckb" checked="checked"

MVC 源码调试

源码调试,帮助你跟好理解MVC,使你开发跟牛B的程序. 1>在Visual命令行中运行“SN.EXE-Vr*,31BF3856AD364E35” 2. codeplex.com 上面找到,和你当前程序版本,一致 的 版本 这里是地址:http://aspnetwebstack.codeplex.com/SourceControl/list/changesets 如果这个版本和你版本一样 单击下载如果下载好了,你就创建一个MVC应用 移除这5个    System.Web.Services 这个不

Asp.Net MVC源码调试

首先下载MVC源代码,下载地址为:https://aspnetwebstack.codeplex.com/ 打开项目,卸载test文件夹下的所有项目和System.Web.WebPages.Administration这个项目,然后重新编译源代码,重新生成所有项目. 在项目中新建一个空的Web项目,包含基本的MVC组件 删除项目中的如下程序集的引用 添加项目中MVC项目源码的引用 查询MVC源码的版本信息 可以看到当前源码的版本为5.2.4.0 打开新建项目中的所有Web.config文件,修改

MVC系列——MVC源码学习:打造自己的MVC框架(四:自定义视图)

前言:通过之前的三篇介绍,我们基本上完成了从请求发出到路由匹配.再到控制器的激活,再到Action的执行这些个过程.今天还是趁热打铁,将我们的View也来完善下,也让整个系列相对完整,博主不希望烂尾.对于这个系列,通过学习源码,博主也学到了很多东西,在此还是把博主知道的先发出来,供大家参考. 本文原创地址:http://www.cnblogs.com/landeanfen/p/6019719.html MVC源码学习系列文章目录: MVC系列——MVC源码学习:打造自己的MVC框架(一) MVC

netbeans工具使用xdebug断点调试php源码

对有有经验的程序员,使用echo.print_r().print_f().var_dump()等函数足以调试php代码,如果需要在IDE工具中使用断点调试,xdebug就是一个非常好的php调试工具.对于不熟悉的代码,可以用Xdebug一步一步的查看请求过程和代码执行过程. 准备工作本地部署的server环境,推荐用phpStudy(内置xdebug),开启php扩展就可以了,不用单独下载xdebug.(下载与php版本对应的xdebug:http://www.xdebug.org) 配置以下三

MVC系列——MVC源码学习:打造自己的MVC框架(二:附源码)

前言:上篇介绍了下 MVC5 的核心原理,整篇文章比较偏理论,所以相对比较枯燥.今天就来根据上篇的理论一步一步进行实践,通过自己写的一个简易MVC框架逐步理解,相信通过这一篇的实践,你会对MVC有一个更加清晰的认识. 本文原创地址:http://www.cnblogs.com/landeanfen/p/6000978.html 这篇博主打算从零开始一步一步来加上MVC里面用到的一些技术,整篇通过三个版本,逐步完善. 一.版本一:搭建环境,实现MVC请求 通过上篇的介绍,我们知道,MVC里面两个最