1
votes

I have an independent solution with multiple projects including class libraries and control libraries. This solution and all its projects are under TFS source control.

I reference the output of one or more of these libraries in all new projects I develop. References are currently binary rather than project references.

The new projects are also always under source control and now I need to add debugging support for the libraries.

If I reference the library projects from them, the project file is modified and no longer works with the original library solution since source control providers for the library and referencee may be different.

Is there an easy way to accommodate this?

2
Have you tried right click on your new project's solution-->Add-->Existing Project and browsing for the required library/libraries? I'm not 100% sure as I don't currently have access to VS but I think that just might solve your issue. - snajahi
Look at including nuget packager in your TFS build process if you can. - kidshaw

2 Answers

2
votes

You should package the shared binaries, along with indexed PDB's, into a Nuget package. Nuget was specifically designed to solve these problems.

You can index your PDB's by running an indexing tool. TF Build can automatically index your PDB's.

0
votes

Nope.

There are some strategies you can use, however. Easiest (possibly, but not in some cases) is to build the project you wish to debug, drop the binaries on top of the application that hosts them, and attach your debugger to the running application. This makes sure you have the correct version of the assembly under debug, but you might have to do unwanted things, such as making sure you're not targeting a specific version of the assembly

enter image description here

Which may be bad news for an assembly under development. It also requires lots of handiwork, which depending on where your application runs may require you run remote debugging, deal with issues transmitting dlls across untrusted networks, etc etc.