For some time, I had an error when opening a specific Visual Studio solution. After a problematic merge operation, the Team Foundation Server Source Control binding information inside my solution file didn’t match with the projects I had in my solution.
If I opened up the sln file, I could find the following section:
Global
GlobalSection(TeamFoundationVersionControl) = preSolution
SccNumberOfProjects = 92
SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C}
SccTeamFoundationServer = http://mytfsserver:8080/tfs/defaultcollection
SccLocalPath0 = .
The number of projects(92) was complete wrong. Visual Studio told me there should be 68 projects:
I found an easy solution to fix this:
- Close the solution in Visual Studio
- Check out the .sln file. Open it with your favorite text editor.
- Remove the GlobalSection(TeamFoundationVersionControl) section completely.
- Close the .sln file and open the solution in Visual Studio.
- The solution file is now no longer bound to Team Foundation Server so we should fix the binding.
- Inside Visual Studio, go to File –> Source Control –> Advanced –> Change Source Control…
- On the Change Source Control screen, select the .sln file and click on the Bind button
- This will recreate the GlobalSection(TeamFoundationVersionControl) inside your solution file:
Global
GlobalSection(TeamFoundationVersionControl) = preSolution
SccNumberOfProjects = 68
SccEnterpriseProvider = {4CA58AB2-18FA-4F8D-95D4-32DDF27D184C}
SccTeamFoundationServer = http://mytfsserver:8080/tfs/defaultcollection
SccProjectUniqueName0
- Check in the updated .sln.