C# 如何使用Nuget源代码进行调试
作为一个临时解决方案(直到我们得到一个内部符号服务器设置),我试图构建包含DLL所有源代码的Nuget包,以便我们的用户可以调试其代码 我已经构建了以下Nuspec文件C# 如何使用Nuget源代码进行调试,c#,visual-studio,nuget,nuspec,C#,Visual Studio,Nuget,Nuspec,作为一个临时解决方案(直到我们得到一个内部符号服务器设置),我试图构建包含DLL所有源代码的Nuget包,以便我们的用户可以调试其代码 我已经构建了以下Nuspec文件 <?xml version="1.0" encoding="utf-8"?> <package xmlns="http://schemas.microsoft.com/packaging/2011/08/nuspec.xsd"> <metadata> <id>
<?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>
我的集会
1.0.0
我的集会
我
我
假的
我的描述
©我2014
当我添加build这个Nuspec文件时,我得到了一个很好的包,包括我的DLL,还有一个名为src的文件夹,其中包含源代码
我看不出该如何做的是让VisualStudio在通过引用的DLL进行调试时使用src目录中的.cs文件(我当前得到的只是一个分解的预览)。这可能吗,我想应该是的,但是我找不到任何例子来说明如何做到这一点
编辑:
谢谢你的回答。请注意,我发现的另一种方法是在consuming solutions Common Properties->Debug Source Files列表中为Nuget软件包添加“src”文件夹。在运行程序时,可以打开Debug | Modules窗口。从那里,您可以选择DLL并浏览相应的PDB文件。之后,您可以手动打开源CS文件并在其中设置断点。Visual Studio将验证PDB和CS是否对应于已编译的CS文件,但这应该没问题,因为您将它们打包在一起。谢谢,我已修改了我的问题,以包含更多信息。令人遗憾的是,VS没有自动检查“src”文件夹,因为这几乎被认为是在Nuget pacakges中包含源代码的默认位置。感谢您提供的信息,我以前从未见过VS对话框。在与IntelliJ/Java的对比中,NuGet看起来仍然有点像局外人。如果源代码在NuGet包中公开,那么它们在默认情况下不会链接,我绝对感到惊讶,这肯定是我错过的。