年终福利:调试.NET Framework源代码
前言
要问JAVA语言最大的优势之一,那就是开源。开源的JAVA框架让JAVA程序员可以不断的通过看源代码来学习、成长、解决问题。并随着时间增长能力越来越强,自然薪水就越来越高。而DONET程序员要看源代码,就只能通过.NET Refelctor或者ILSPY等工具,由于是第三方的,源代码大多不全。但是随着DOTNET的开源,有了官方的支持,DOTNET程序员终于也可以开始享受这种福利了,更何况我们还有最好的IDE,下面给大家介绍一下,如何在VS中,调试DOTNET框架的源代码,最终效果图如下:






注意这里不是用的.NET Reflector的效果。更何况前者是收费的,对于正规的公司而言,都是不被允许使用的,怕惹上官司上的麻烦。
开始
由于我的开发工具是VS2013,那么下面就以VS2013为例,来看看怎么设定吧!
打开菜单:Tools -> Options -> Debugging -> General menu,设定如图:

上图参考:微软官方设定图
好接下来,设定符号。

这里简单解释一下符号,即Symbols。其实Symbols是对PDB文件的一种称呼,所谓PDB,即Programe database ,是程序在编译时产生的文件,里面附加有大量的调试信息。微软的符号服务器固然有大量的Symbols,然后这些都是被阉割过的,关于源码的部分的被砍得所剩无几,所以一定不要勾选Microsoft符号服务器,另外http://referencesource.microsoft.com/sumbols支持到.NET 4.5.1,以上结论均可以具体参考:http://blogs.msdn.com/b/dotnet/archive/2014/02/24/a-new-look-for-net-reference-source.aspx。另外微软也说,现在虽然不是所有库的symbols都有,但随着时间的推移,微软支持的会越来越多。所以大家只用设定好,然后等着微软更新就OK了:-).
另外对于其它的VS版本,请参考:http://stackoverflow.com/questions/15185725/debug-net-framework-source-code-in-visual-studio-2012
好了,完工。
差点忘了,还有一个资源:http://referencesource.microsoft.com/download.html,效果如下:

真的完工了。
最后,放一则广告:找钢网武汉研发中心招聘中高级.NET工程师。扎根于钢铁行业互联网电商,已完成N轮融资,估值超十亿美金。十三薪,福利丰厚,全员持股。
这可能会是你遇到的,最好的机会。
有意向的朋友可以邮箱联系我:582105721@qq.com。最好能附上您的简历。我会第一时间转给HR。
年终福利:调试.NET Framework源代码的更多相关文章
- 调试 .NET Framework 源代码、.DotNetCore源码
调试 .NET Framework 源代码..DotNetCore源码 如何调试 .NET Framework 源代码 在 Visual Studio 调试器中指定符号 (.pdb) 和源文件 .NE ...
- 如何:调试 .NET Framework 源代码
文章标题:如何:调试 .NET Framework 源代码 文章地址:https://technet.microsoft.com/zh-cn/cc667410.aspx
- 如何调试Android Framework?
Linus有一句名言广为人知:Read the fucking source code. 但其实,要深入理解某个软件.框架或者系统的工作原理,仅仅「看」代码是远远不够的.就拿Android Frame ...
- 如何在 Visual Studio 2013 中调试.NET Framework 4.5.1 代码
版本需求如标题,在 工具->选项->调试->常规 中,更改以下设置: 禁用:启用“仅我的代码”.逐过程执行属性和运算符(仅限托管).要求源文件与原始版本完全匹配 启用:启用 .NET ...
- 调试Felix Framework
这里是指用Eclipse调试Felix Framework自身. 1. 首先安装Eclipse Java EE,然后再安装Java Source Attacher,这样才会在Jar文件的右键菜单“属性 ...
- dotnet Framework 源代码 类库的意思
本文告诉大家 dotnet framework 的源代码类库的意思 下面列出来 dotnet framework 源代码的各个类库的作用. System System 命名空间包含基本类和基类,这些类 ...
- dotnet Framework 源代码 · Ink
本文是分析 .NET Framework 源代码的系列,主要告诉大家微软做笔迹用的思路,怎么做的笔迹才是高性能的,用户体验比较好的.我会告诉大家源代码的思想,当然这个文章会比较无聊.如果你是想做笔迹的 ...
- .net Framework 源代码 · ScrollViewer
本文是分析 .net Framework 源代码的系列,主要告诉大家微软做 ScrollViewer 的思路,分析很简单 看完本文,可以学会如何写一个 ScrollViewer ,如何定义一个 ISc ...
- 手把手教你调试Entity Framework 6源码
0 摘要 本文讲述在Visual Studio 2013(VS 2013)下调试Entity Framework 6(EF 6)源码的配置过程.原则上,VS 2012也适用. 之前打算编写<E ...
随机推荐
- linux 创建和删除目录
创建目录命令 mkdir 目录名 [root@wang whp]# mkdir catalog[root@wang whp]# lscatalog [root@wang whp]# mkdir cat ...
- Linux学习之六——使用vi和vim
一.vi的三种模式和相互切换 1. 一般模式 1) 移动光标 可以用箭头键,Page Up, Page Down, Home,End等按键移动光标 G,移动到档案最后一行 1G,gg,移动到档案第一行 ...
- mac svn 终端操作命令
svn 删除目录命令 svn 提交命令 svn commit -m zenggui 出来要提交的目录后,按shift + : + q 如遇到不明白的可以输入:svn help 比如想查询删除命令的使用 ...
- Hive history date mapping
Hive history table mapping create table fdl_family as select * from (select 'acc1' as account,'famil ...
- selenium循环点击文本框
1.可以用xpath循环点击checkbox List<WebElement> list = dr.findElements(By.className("datagrid-row ...
- 【ASP.NET 基础】ASP.NET内置对象
准确地说,asp.net 并没有内置对象这一说,jsp 里确实把 request.response 这些当作 jsp 的内置对象,这里只不过是借用了一下 jsp 的说法而已.在 Web 中处于中心的是 ...
- Floyd判最小环算法模板
算法思想:如果存在最小环,会在编号最大的点u更新最短路径前找到这个环,发现的方法是,更新最短路径前,遍历i,j点对,一定会发现某对i到j的最短路径长度dis[i][j]+mp[j][u]+mp[u][ ...
- 类似区间计数的种类并查集两题--HDU 3038 & POJ 1733
1.POJ 1733 Parity game Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 5744 Accepted: ...
- js判断滚动条到底部
判断滚动条到底部,需要用到DOM的三个属性值,即scrollTop.clientHeight.scrollHeight. scrollTop为滚动条在Y轴上的滚动距离. clientHeight为内容 ...
- 整理MAC下Eclipse的常用快捷键
整理Eclipse常用快捷键 开发环境切换到Mac下后原来Window下的快捷键很大一部分是不相容的,习惯了快捷键的生活忽然哪天快捷键不起作用了,跟着的就是开发效率明显降低,频繁录入错误的快捷键让Ec ...