В качестве временного решения (пока мы не получим внутреннюю настройку сервера символов) я пытаюсь создать пакеты Nuget, которые включают весь исходный код для DLL, чтобы наши пользователи могли отлаживать его код.
Я создал следующий файл 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, содержащую исходный код.
Чего я не вижу, так это заставить Visual Studio использовать файлы .cs в каталоге src при отладке с помощью указанной DLL (все, что я сейчас получаю, - это предварительный просмотр). Возможно ли это, я предполагаю, что так и должно быть, однако я не могу найти примеров того, как это сделать.
Изменить: спасибо за принятый ответ. Просто отметим, что другим способом, который я нашел для этого, является добавление папки «src» для пакета Nuget в список потребляющих решений «Общие свойства» -> «Исходные файлы отладки».