我正在尝试调试.NET Framework中的某些代码。不幸的是,许多变量已被优化,由于流程优化,我无法可靠地设置指令指针。
是否可以强制运行时不使用.NET系统DLL的ngen版本,而是使用MSIL,将优化强制为“关闭”?
注意:我尝试使用INI技巧来设置AllowOptimize = false,但这没有什么区别。
最佳答案
这是另一个选项(来自http://martin.bz/asp-net-mvc-source-debugging-the-easy-way):
Go to the directory where System.Web.Mvc .dll is located:
c:\Windows\assembly\GAC_MSIL\System.Web.Mvc\2.0.0.0__31bf3856ad364e35\
Create the file System.Web.Mvc.ini
[.NET Framework Debugging Control] GenerateTrackingInfo=1 AllowOptimize=0
Next time you step into the MVC source code you can inspect all variables.
http://msdn.microsoft.com/en-us/library/9dd8z24x.aspx上的更多详细信息
关于.net - 是否可以将系统.NET DLL调试为未优化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2300827/