我正在尝试为我的库构建nuget包和符号.我正在使用TeamCity构建软件包,然后将它们推送到我的内部SymbolSource仓库.
一切似乎都在构建/打包/推送很好,但是当我去调试我的nuget包(使用VS2012)时,源代码不正确,更好的是,我找不到它在任何地方显示的方法名称图书馆.
我的项目结构:
MyProject /
Bin/
release/
MyProject.dll
VariousFolders/
CSFiles.cs
VariousCSFiles.cs
MyProject.csproj
MyProject.nuspec
Run Code Online (Sandbox Code Playgroud)
在我的.nuspec文件中(注意,在TeamCity端处理v4.0和v4.5目录):
<?xml version="1.0"?>
<package >
<metadata>
<id>MyProject</id>
<version>0.0</version>
<title>MyProject</title>
<authors>Me</authors>
<owners>Possibly You</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Sweet Description</description>
<releaseNotes></releaseNotes>
<copyright>Copyright 2013</copyright>
</metadata>
<files>
<file src="MyProject\**\*.cs" target="src" />
<file src="MyProject\bin\release\v4.0\*.dll" target="lib\net40" />
<file src="MyProject\bin\release\v4.0\*.pdb" target="lib\net40" />
<file src="MyProject\bin\release\v4.5\*.dll" target="lib\net45" />
<file src="MyProject\bin\release\v4.5\*.pdb" target="lib\net45" />
</files>
</package>
Run Code Online (Sandbox Code Playgroud)
检查teamcity产生了MyProject.0.0.nupkg
lib/
net40/
MyProject.dll
net45/
MyProject.dll
Run Code Online (Sandbox Code Playgroud)
检查TeamCity生成了MyProject.0.0.symbols.nupkg
lib/
net40/
MyProject.dll
MyProject.pdb
net45/
MyProject.dll
MyProject.pdb
src/
VariousFolders/
CSFiles.cs
VariousCSFiles.cs
Run Code Online (Sandbox Code Playgroud)
所以我假设的问题是,当我将包推送到我的内部符号repo时,我去查看文件结构,如下所示:
Data/
MyProject/ …Run Code Online (Sandbox Code Playgroud)