前言

   要问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源代码的更多相关文章

  1. 调试 .NET Framework 源代码、.DotNetCore源码

    调试 .NET Framework 源代码..DotNetCore源码 如何调试 .NET Framework 源代码 在 Visual Studio 调试器中指定符号 (.pdb) 和源文件 .NE ...

  2. 如何:调试 .NET Framework 源代码

    文章标题:如何:调试 .NET Framework 源代码 文章地址:https://technet.microsoft.com/zh-cn/cc667410.aspx

  3. 如何调试Android Framework?

    Linus有一句名言广为人知:Read the fucking source code. 但其实,要深入理解某个软件.框架或者系统的工作原理,仅仅「看」代码是远远不够的.就拿Android Frame ...

  4. 如何在 Visual Studio 2013 中调试.NET Framework 4.5.1 代码

    版本需求如标题,在 工具->选项->调试->常规 中,更改以下设置: 禁用:启用“仅我的代码”.逐过程执行属性和运算符(仅限托管).要求源文件与原始版本完全匹配 启用:启用 .NET ...

  5. 调试Felix Framework

    这里是指用Eclipse调试Felix Framework自身. 1. 首先安装Eclipse Java EE,然后再安装Java Source Attacher,这样才会在Jar文件的右键菜单“属性 ...

  6. dotnet Framework 源代码 类库的意思

    本文告诉大家 dotnet framework 的源代码类库的意思 下面列出来 dotnet framework 源代码的各个类库的作用. System System 命名空间包含基本类和基类,这些类 ...

  7. dotnet Framework 源代码 · Ink

    本文是分析 .NET Framework 源代码的系列,主要告诉大家微软做笔迹用的思路,怎么做的笔迹才是高性能的,用户体验比较好的.我会告诉大家源代码的思想,当然这个文章会比较无聊.如果你是想做笔迹的 ...

  8. .net Framework 源代码 · ScrollViewer

    本文是分析 .net Framework 源代码的系列,主要告诉大家微软做 ScrollViewer 的思路,分析很简单 看完本文,可以学会如何写一个 ScrollViewer ,如何定义一个 ISc ...

  9. 手把手教你调试Entity Framework 6源码

    0  摘要 本文讲述在Visual Studio 2013(VS 2013)下调试Entity Framework 6(EF 6)源码的配置过程.原则上,VS 2012也适用. 之前打算编写<E ...

随机推荐

  1. 用shell脚本批量修改文件后缀名

    早上本想将一些照片上传到相册中,但是由于所有照片的扩展名都是JPG而不是小写的jpg,因此造成了“格式不正确”而不能上传照片.此刻就产生了这样一个问题:使用shell脚本如何批量将所有文件的扩展名JP ...

  2. IOS版本被拒的经历

    IOS版本被拒的经历: 1,登陆方式依赖外部平台 因为我们的APP是只用微博登陆,想做成类似meerkat类型的,也能各种消息都同步微博. 结果当然行不通,这个确实是不听好人言,网上多个人都说过这个问 ...

  3. c#分页读取GB文本文件

    应用场景: a.我在做BI开发测试的时候,有可能面对source文件数GB的情况,如果使用一般的文本编辑器,则会卡死,或要等很久才能显示出来. b.有时候,我们使用ascii(01)或ascii(02 ...

  4. [麦先生]学习PDO循序渐进使用方式

    使用方式  特点一:支持跨数据库 1:首先实例化PDO,创建PDO对象的四个必备参数:host(哪一种类型的数据库,mysql/orcal/SQLserver等);dbname(数据库的名称);cha ...

  5. dipole antenna simulation by HFSS

    工作频点为1GHz,新建工程,添加新设计,编辑添加下面的变量 建立天线模型,即两个金属圆柱.编辑完一个振子后,另一半可以用镜像命令产生参数如下设置 ,材料为PEC 两个圆柱间建立一个矩形片,连接两个圆 ...

  6. GoLang 的 daemonize 实现

    func daemonize(cmd string, args []string, pipe io.WriteCloser) error { pid, _, sysErr := syscall.Raw ...

  7. 快速熟悉Zbrush中的四种裁切笔刷

    ZBrush 4.0R4完善了裁切的功能.捷就可以把模型想要隐藏的地方用选择裁切的方法隐藏掉,其中ZBrush在®4.0R4软件中提供了4中裁切笔刷,分别为ClipCircle笔刷.ClipCircl ...

  8. codeforces 484B B. Maximum Value(二分)

    题目链接: B. Maximum Value time limit per test 1 second memory limit per test 256 megabytes input standa ...

  9. Unity3d+Jenkins 自动编译iOS、Android版本

    1.在Unity3d中, 创建导出 iOS.Android 项目脚本 PerformBuild.cs ,放在Editor目录下(必须),如下: using UnityEditor; using Sys ...

  10. QTP 10 安装及破解

    QTP(QuickTest Professional),是一款比较优秀的商业自动化测试工具,主要用于web项目和C/S结构程序的测试. QTP具有的一大特性:关键字驱动测试(keyword-drive ...