NuGet包调试源码的方法
如果按照nuget官网给出的网址:https://docs.nuget.org/create/creating-and-publishing-a-symbol-package
那么你会发觉下载符号包的地址会报404错误。
我测试了,注意编译环境的文件路径不能包含中文,之前我用的中文路径发现死活下载不了src文件,后面修改成全英文的路径一次搞定!这里是我找到的线索:http://inedo.com/support/questions/3409,这里大概说了是路径的问题,所以我用pdbstr.exe工具查看了自己的pdb文件,确实出现了中文乱码的路径,所以切记:编译的路径不能含有中文。
在ProGet搭建自己内网的包管理系统,如果想要调试源码的包,那么只上传.symbols.nupkg即可,然后项目中下载这个带src文件的包,因为包中本身自带pdb,所以到时调试时指定一下路径即可解决。
如果采用PorGet提供的symbols server的方案,会在d可以参考这个:
http://inedo.com/support/tutorials/proget/debug-into-internal-nuget-packages-with-proget
也同样记住:编译的路径不能含有中文
至于权限的问题,免费版本不能精确到每个feed,那么你可以装多几个ProGet,一来源码和release版本的库分别到不同的站点,也可控制哪些人可以看哪些人不能看。
如何调试这些引入第三方库的源代码,使用的是单步运行,比如在调用的方法上打上断点,然后程序到达了断点上按【F11】即可进入源代码调试。
在实际调试时,对于下载pdb和src的请求,你可以使用fiddler来观察,能快速定位到哪里的错误!