The Visual Studio Tools for Unity are able to convert .NET debug symbol files (namely pdb files) to debug symbols files that are understood by Unity's scripting engine (namely .dll.mdb files) when importing both the .dll and the .pdb in the Assets folder.
If you prefer to handle the conversion yourself you need to call a tool named pdb2mdb on the .dll associated with the .pdb:
pdb2mdb MyLibrary.dll
Will produce a MyLibrary.dll.mdb usable on Unity if MyLibrary.pdb is present.
The .pdb files generated by Visual Studio 2015 can contain new informations that are not handled by the pdb2mdb file shipped by Unity.
You can download below the version that VSTU is using which handles the new 2015 format. This executable is self-contained and embeds all the references it needs, namely Mono.Cecil.
License Information:
- pdb2mdb is licensed under the Microsoft Public License (Ms-PL).
- Mono.Cecil is licensed under the MIT/X11.
I've confirmed that this works with Unity 5.2.3f1, with both Visual Studio 2015 and 2013. It would be nice if this could be distributed directly with Visual Studio Tools For Unity.
We will continue to do the PDB conversion explicitly because the automatic conversion when DLL's are imported into Unity did not work reliably for us. We have dozens of DLL's in our project, and only about half of them had their PDB files converted. Selecting both the DLL and it's PDB and reimporting explicitly did generate the MDB, but we cannot rely on this manual process.