[英]How to debug using Nuget source code
作为临时解决方案(直到获得内部Symbol服务器设置),我试图构建包含DLL所有源代码的Nuget程序包,以便我们的用户可以调试其代码。
我已经建立了以下Nuspec文件
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd">
<metadata>
<id>My Assembly</id>
<version>1.0.0</version>
<title>My Assembly</title>
<authors>Me</authors>
<owners>Me</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>My description</description>
<copyright>© Me 2014</copyright>
<dependencies>
<dependency id="Autofac" />
<dependency id="Autofac.Configuration" />
<dependency id="Autofac.Web"/>
<dependency id="AutoMapper" />
<dependency id="FluentNHibernate" />
<dependency id="Iesi.Collections"/>
<dependency id="Newtonsoft.Json" />
<dependency id="NHibernate"/>
</dependencies>
<frameworkAssemblies>
<frameworkAssembly assemblyName="System.Web" />
</frameworkAssemblies>
</metadata>
<files>
<file src="bin\MyAssembly.dll" target="lib" />
<file src="bin\MyAssembly.pdb" target="lib" />
<file src="**\*.cs" target="src"/>
</files>
</package>
当我添加构建此Nuspec文件时,最终得到一个不错的包,包括我的DLL,以及一个名为src的文件夹,其中包含源代码。
我看不到怎么做,是在通过引用的DLL调试时让Visual Studio使用src目录中的.cs文件(我目前得到的只是一个分解的预览)。 我想应该是这样吗,但是我找不到如何执行此操作的任何示例。
编辑:感谢您接受的答案。 只是要注意,我发现这样做的另一种方法是在使用的解决方案“公共属性”->“调试源文件”列表中为Nuget包添加“ src”文件夹。
在运行程序时,可以打开“调试|模块”窗口。 从那里,您可以选择DLL并浏览到相应的PDB文件。 之后,您可以手动打开源CS文件并在其中设置断点。 Visual Studio将验证PDB和CS是否对应于已编译的CS文件,但这应该没问题,因为您将它们打包在一起。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.