Visual Studio 2017调试开源项目代码
在我们的开发过程中很多时候我们会从GitHub上面下载一些开源的项目代码,然后在此基础上进行调试,正常情况下我们只需要将项目的源代码编译成Dll或者在.Net Core项目中直接引用相应的Nuget包就可以了,但有些时候除了引用这些Dll或者包之外,我们还需要直接在调试的过程中进行源代码的调试,这种情况下我们该如何直接在Visual Studio中进行代码的调试呢?可能说这些还不是能够很好的理解,那么我就具体举出一些示例来进行说明吧。
一 问题描述
比如在使用非常流行的ABP框架时候,我们从官网上面下载了具体的模板项目,但是这些项目模板都是直接引用这些框架的Nuget包的,我们可以参考下面的图片。

那么我们该怎样去调试这些包里面的源码呢?那么这个问题就将我们的思路带到了本篇文章的重点,在这个情况下我们该怎样去调试项目的源码呢?下面通过这些步骤你将达到以上的目的。
二 解决步骤
1 下载项目源代码到一个本地磁盘位置
我们首先需要去GitHub(视具体情况而定)下载项目的源代码,这里需要注意项目的源代码要和引用的Nuget保持一致,这个不需要多说明。
2 添加项目源代码位置
A 依次执行:解决方案--》右键--》属性--》通用属性--》调试源文件--》新建目录(以Visual Studio 2017为例来说明)

B 添加项目源代码位置

3 修改:工具--》选项 中的配置

这样在进行调试的时候当执行到某一个函数时按下F11就能够进入到程序包的源代码中进行调试了。
三 注意事项
1 注意在GitHub下载的源码一般都是最新发布的,所以在调试之前请保证引用的Nuget包也是最新的,具体方法就是在管理Nuget程序包中更新一下。
2 务必保持引用的包和附加的源码保持一致。
Visual Studio 2017调试开源项目代码的更多相关文章
- Visual Studio 2017 调试器的工作进程(msvsmon.exe)意外退出 调试将终止
开发环境: Windows 10 in Parallels Desktop Visual Studio 15.6 场景还原: 使用 Visual Studio 15.6 (即 Visual Studi ...
- 如何使用Visual Studio 2017调试.net库源代码
在Visual Studio 2017按如下步骤设置: 1.取消选中(工具 - >选项 - >调试 - >仅我的代码)复选框.2.确保设置了(工具 - >选项 - >调试 ...
- Visual Studio 2017 调试 windows server 2016 Docker Container
网上很多文章都是在win10下,用Docker for windows工具进行Docker的安装部署的.用知道windows server 2016已经原生支持Docker了,其windows Con ...
- visual studio 2017无建模项目?
教一跨行同事学C#,我想从基础的讲一下,也就是最基本的面象对象分析与设计(OOAD),我直接打开我最新安装的 visual studio 2017.准备建一个“建模项目”.结果发现死活找不到?打开一个 ...
- Visual Studio 2017打包安装项目
在我们用VS编好上位机后,就可以在自己电脑运行上位机,但是想其他人电脑运行上位机可能就行不通了,因为其他人电脑不一定有所需要的运行环境.这时我们就需要打包安装,把运行软件所需要的环境都打包在安装包里. ...
- Visual Studio Code - 调试 Node.js 代码
官方的文档写的太好了!大家还是看参考资料吧. 参考资料: Debugging in Visual Studio Code Debug Node.js Apps using Visual Studio ...
- 在 Visual Studio 2017 新建的项目中,无法设置项目版本号的通配符规则
错误信息:CS8357 指定的版本字符串中包含与确定性不兼容的通配符.从版本字符串删除通配符,或者禁用此编译的确定性 解决方法:删除项目文件中的配置,或将其设为 False :<Determin ...
- visual studio 2017调试时闪退。
解决方案: 在工程上右键--->属性--->配置属性--->连接器--->系统--->子系统(在窗口右边)--->下拉框选择控制台(/SUBSYSTEM:CONSO ...
- Windows 10 更新补丁后Visual Studio 2017 运行项目出现错误
问题: 今天更新了Windows 10(版本 1709)推送最新补丁后,打开Visual Studio 2017运行Web项目,都出现“指定的参数超出有效值的范围 参数名:site”,如下图: 解决方 ...
随机推荐
- Redis主从数据库同步
Redis主从同步原理-SYNC和MySQL主从复制的原因一样,Redis虽然读取写入的速度都特别快,但是也会产生读压力特别大的情况.为了分担读压力,Redis支持主从复制,Redis的主从结构可以采 ...
- 【js】横/纵向无缝滚动
1.纵向无缝滚动(类似淘宝) ps:存在一个问题,当鼠标移入时,未关闭定时器 <!DOCTYPE html> <html> <head> <meta char ...
- 003_生成器(generator)内部解析
#http://kb.cnblogs.com/page/87128/(未看完)
- 2017-2018-2 20155314《网络对抗技术》Exp7 网络欺诈防范
2017-2018-2 20155314<网络对抗技术>Exp7 网络欺诈防范 目录 实验目标 实验内容 实验环境 基础问题回答 预备知识 实验步骤 1 利用setoolkit建立冒名网站 ...
- ORA-19566: exceeded limit of 0 corrupt blocks for file E:\xxxx\<datafilename>.ORA.
How to Format Corrupted Block Not Part of Any Segment (Doc ID 336133.1) To BottomTo Bottom In this D ...
- 无备份时用dbms_repair恢复坏块的方法
份的情况下可以直接使用备份来恢复. 对于通过备份恢复,Oracel为我们提供了很多种方式,冷备,基于用户管理方式,RMAN方式等等. 对于这几种方式我们需要实现基于数据库以及文件级别的恢复.RMAN同 ...
- 理解Shadow DOM(一)
1. 什么是Shadow DOM? Shadow DOM 如果按照英文翻译的话可以理解为 影子DOM, 何为影子DOM呢?可以理解为一般情况下使用肉眼看不到的DOM结构,那如果一般情况下看不到的话,那 ...
- Storm知识点
1. 离线计算是什么? 离线计算:批量获取数据.批量传输数据.周期性批量计算数据.数据展示 代表技术:Sqoop批量导入数据.HDFS批量存储数据.MapReduce批量计算数据.Hive批量计算数据 ...
- mongodb java3.2驱动 测试 一些记录
mongo驱动包 自带线程池的概念 获取 MongoClient mongoClient 后 通过客户端(mongoClient ) 获取 库操作 MongoDatabase 获取 表操作 Mongo ...
- 很详细全部的WinDbg学习资料
[ 分类 ]- windbg - hgy413的专栏(﹎゛Never Give Up Your Dream ..ヽ..) - CSDN博客 .