网站备案名称几个字,企业网站定制案例,如何制作网上商城,网站首页适配规则一、前言 .NET开源时间还不长#xff0c;因为一直在做YOYOFx的关系#xff0c;所似我常常有更深入的了解.NET Core和ASP.NET Core内容的需求#xff0c;并且.NET Core平台与之前版本的变化太大#xff0c;这也导致我经常要去查看源代码中#xff0c;来了解ASP.NET Core和.… 一、前言 .NET开源时间还不长因为一直在做YOYOFx的关系所似我常常有更深入的了解.NET Core和ASP.NET Core内容的需求并且.NET Core平台与之前版本的变化太大这也导致我经常要去查看源代码中来了解ASP.NET Core和.NET Core代码实现。 的确.NET Core和ASP.NET Core的源代码现在已经在Github上进行了代码托管但不管是在Github上在线阅读或是将源代码Clone到本地阅读都比较有局限性我最想要的还是能通过调试的方法单步的对程序进行DEBUG调试断点到源代码中。 我写这篇文章的目地也是描述一下如何调试.NET Core源代码的步骤我总结了两种对.NET Core源代码的方法。 二、符号服务器 以前微软给我们调试.NET程序的方法通常是在Visual Studio加入符号服务器来调试.NET托管程序。我们这次使用同样的方法来完成这个调试源代码的任务。 首先.NET Core的符号服务器地址https://dotnet.myget.org/F/dotnet-core/symbols/ 关于这个符号服务器地址是怎么找到的还是去MyGet上去多溜溜发现肯定会不少。 我们这次使用Visual Studio 2015 Update3来完成以下操作 1.设置符号服务器 在VS2015的Tools - Options - Debugging -Symbols中添加符号服务器地址https://dotnet.myget.org/F/dotnet-core/symbols/ 然后最好清一下符号文件的缓存。 2.设置VS2015支持调试进框架源代码 Tools - Options - Debugging -Symbols - General中勾选Enable .NET Framework source stepping和Enable source server support 两个选项。 现在就可以进行单步调试进.NET Core的源代码中了只是第一次DEBUG加载的时候会非常的慢符号服务器在国外嘛真的是比较慢而且不会一次性全部下载并加载进来可能在调试到某些断点时还要进行符号文件的下载不过这种方法也有好的一面比如所有代码都能看到源代和调试了包括.NET Core的Fx。 三、项目中添加ASP.NET Core源代码 第二种方式是通过将源代码加入到项目中以达到代码调试的能力。这次以ASP.NET Core的源代码为例同学们可以举一反三这次使用的环境为.NET Core 1.0.1当然ASP.NET Core MVC项目的版本也要与之对应。 1.Clone源代码 我们先Clone一份ASPNETCore.MVC的源代码到本地因为我们这次使用的版本是1.0.1所以Clone后查看下包括的版本信息。 D:\Projects\AspNet\Mvc [master ≡] git tag1.0.01.0.0-rc21.0.16.0.0-alpha26.0.0-alpha36.0.0-alpha46.0.0-beta16.0.0-beta26.0.0-beta36.0.0-beta46.0.0-beta56.0.0-beta66.0.0-beta76.0.0-beta86.0.0-rc1rel/1.0.1D:\Projects\AspNet\Mvc [master ≡] 我们需要的版本为rel/1.0.1如果Clone的版本不正确也可以git checkout 1.0.1下。 2.修改global.json 接下来我们要修改项目根目录中的global.json文件 { projects: [ src, test, D:\\Projects\\AspNet\\Mvc\\src ], sdk: { version: 1.0.0-preview2-003131 }} 在文件加入Clone下来的ASPNETCore源代码的路径。当然这里要注意VS2015里创建项目模板可能会有版本问题SDK使用的是1.0.0-preview2-003131版本还有project.json里的程序集版本也要与源代码提供的版本保持一致完成这个步骤后我们等待一会整个项目就是重新来还原包信息和编译。 当然还是会出现一些小问题比如项目编译时会找不到AspNetCore项目编译出来的DLL文件这是因为如果Clone下来的源代码与你的项目不在一个目录下的话会导致找不到编译出来的程序集解决方法也很简单修改下编译参数我的做法是修改.xproj的方法。 将下载的ASP.NET Core的源代码中的项目文件 *.xproj 依次打开找到如下行 OutputPath Condition$(OutputPath) ..\..\artifacts\bin\/OutputPath 将其修改为 OutputPath Condition$(OutputPath) .\bin\/OutputPath 四、写在最后 好了经过以上的步骤现在再编译就可以通过了接下来下断点吧。 以上的两种方法都可以举一反三找到符号文件或编译源代码加入项目目录都可以编译调试任何.NET Core开源代码。 原文地址http://www.cnblogs.com/maxzhang1985/p/6015719.html .NET社区新闻深度好文微信中搜索dotNET跨平台或扫描二维码关注