[解决]ASP.NET MVC 4/5 源码调试(source code debug)

时间:2023-12-16 11:42:26

========================ASP.NET MVC 4============================

ASP.NET MVC 4 source code download[官方]

修改后的ASP.NET MVC 4相关工程文件下载

解压源文件, 然后用笔者修改后的工程文件替换对应文件(直接替换就行).

ASP.NET MVC 4 build前请先运行build RestorePackages

C:\Codes\ASP.NET MVC 4>build RestorePackages
Microsoft (R) Build Engine version 4.0.30319.33440
[Microsoft .NET Framework, version 4.0.30319.34014]
Copyright (C) Microsoft Corporation. All rights reserved. Restoring NuGet packages...

然后打开Runtime.sln(需要管理员权限), build solution, 然后试试debug你的项目工程, 在某个你要访问的action里面打上断点点击相关堆栈即可.

========================ASP.NET MVC 5============================

ASP.NET MVC 5 source code download[官方]

修改后的ASP.NET MVC 5相关工程文件下载

解压源文件, 然后用笔者修改后的工程文件替换对应文件(直接替换就行).

打开Runtime.sln(需要管理员权限), 第一次build会自动下载丢失的packages, 时间会长一些。

build成功后试试调试你的项目。

[解决]ASP.NET MVC 4/5 源码调试(source code debug)

========================备注============================

笔者用的是Windows 8.1 + Visual Studio 2013

基本原理就是把debug需要用的ASP.NET MVC API 文件(dll & dbg)自动build到相关程序集缓存里, 不建议用到生产环境。

比如System.Web.Mvc [MVC5]工程添加Post-build命令

mkdir "C:\Windows\Microsoft.Net\assembly\GAC_MSIL\System.Web.Mvc\v4.0_5.1.0.0__31bf3856ad364e35\"
"C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\sn.exe" -Vr $(TargetFileName)
"C:\Program Files (x86)\Microsoft SDKs\Windows\v8.0A\bin\NETFX 4.0 Tools\gacutil.exe" /i "$(TargetPath)" /f
copy "$(TargetDir)$(TargetName).pdb" "C:\Windows\Microsoft.NET\assembly\GAC_MSIL\$(TargetName)\v4.0_5.1.0.0__31bf3856ad364e35\"

笔者修改的工程文件为System.Web.Mvc, System.Web.Razor,System.Web.WebPages, System.Web.WebPages.Razor四个常用工程, 如需debug其他工程可自行添加Post Event

[解决]ASP.NET MVC 4/5 源码调试(source code debug)

如果有盆友们有build不过的, 请自行查找原因(需要管理员权限)

[解决]ASP.NET MVC 4/5 源码调试(source code debug)