My team uses a Team Foundation Server (TFS) to house code for multiple websites and custom libraries shared by all of those websites. For our newest website, we work in VS2013, but one older website has compatibility issues unless you open it in VS2010. Generally, this is fine.
Recently, however, I ran into source control issues that I realized was the result of accidentally adding a .csproj from my VS2013 workspace into the old website's .sln in VS2010.
While I was eventually able to sort out this discrepancy, I'm curious if there is a way to, or a reason to, combine or associate my VS2010 workspace and my VS2013 workspace seeing as they are both representing the same branch on our TFS?
Disclaimer: I am new to TFS, .NET and Visual Studio so please quietly disregard this question if it's dumb.
The accepted solution to your issue is separation rather than consolidation. If you pull out your shared code to a separate solution and have it built into a Nuget package then you reference that package from both 2010 & 2013.
However as Visual Studio 2010 drops out of mainstream support next month you should also resolve the compatibility issue.
Related
[Update]
I understand I can use 2015 side by side with VS 2010, but we've had problems just polluting our environment. If there is a chance someone has done this, it could save me a lot of time and energy instead of going with an install only to find out it doesn't work. It's also unfortunate this isn't documented anywhere.
So just like the title says.
To give some more background we're hoping to use VS2015 with our testers to kick start using selenium, but our task/bug management is all on TFS2010.
I don't want to distort the testers' environment, neither can I play with any of our dev machines to try this out physically. A VM will just not really run on our, not so fast machines.
My google-fu didn't get me to far. The VS2015 Express features does mention TFS, but I want to know specifically if it supports TFS 2010. Additionally I found a MSDN page. This talks about the various VS and TFS versions but nothing here about VS Express
Related SO posts I found:
Visual Studio 2015 & TFS 2010 Not specific about VS express or not, no definitive answer
Visual Studio 2015 with TFS 2010 More unrelated, this is about builds going wrong
You should be able to run VS2010 and VS2015 side-by-side, but not on the same solution/project files.
Once you open an older project in 2015, a project conversion will happen. If I recall correctly, project compatibiliy started to stabilizer around VS2012, but don't quote me on that, I'd say it is not likely.
You will NOT be able to open the same project in both at the same time afaik, so it's a one-time shift that'd meet your needs.
As far as task tracking systems go, you could also opt in on VSTS and do a one-time export of your existing bugs/tasks. Shouldn't take you more than a day or so to plan and migrate those over.
You can open the project with VS2015 but it will be upgraded to a newer state. We recently done this and could not go back using VS2010. Otherwise you can version control and keep both projects, i.e. the old implementation and the upgraded one. You could try with VS2015 Community Edition.
You sure can run both versions side by side, but not on the same project. Also, the Microsoft Test Manager that comes with Visal Studio 2015 will not connect to TFS 2010. It tells you that it needs an older version of MTM. I am still working out the kinks on our systems.
I've installed Visual Studio 2013 Premium (MSDN license) on my machine. Yet, the ASP.NET Web Application template is not there (except for Version2012, which offers me MVC 4, see screenshot below):
I have uninstalled and reinstalled VS2013 three times now. I've deleted the ItemTemplatesCache and ProjectTemplatesCache folders along with running the devenv /InstallVSTemplates and devenv /Setup to no avail. I've also checked to make sure web developer tools are installed. Under the \Common7\IDE\ProjectTemplatesCache\CSharp\Web folder, I only see MVC 4 template files. Am I missing something? An extension or additional program?
Below I added a screenshot of the frameworks I have installed. Any direction or advice would be appreciated. Thank you!
Jodie.
I think that "Re-install Visual Studio from scratch" is not a solution.
I have faced with the described problem and found much faster way to fix it:
First of all, try to repair Visual Studio installation (in "Control Panel\Programs\Programs and Features" find your Visual Studio, right-click and select "Repair"). Reboot after (!).
Check if template appeared in the Visual Studio. If not, then: in the "Control Panel\Programs\Programs and Features" make sure that you have "Microsoft Web Platform Installer 4.x" installed (I have 4.6 version). If not - install it from here: http://www.microsoft.com/web/downloads/platform.aspx
Run "Web Platform Installer" (it should be here: "%ProgramFiles%\Microsoft\Web Platform Installer\WebPlatformInstaller.exe")
On the "Products" tab find the line "Microsoft ASP.NET and Web Tools 2013.1 for Visual Studio 2013" (make sure that it is not for 2012!). If line has "Add" button on the right side enabled, then click it and install the tools. Reboot PC (!) and you should have your ASP.NET project template back.
If line says "Installed", then you should repair it via "Control Panel\Programs\Programs and Features", just find "Microsoft ASP.NET and Web Tools 2013.1 -Visual Studio 2013", right-click and select "Repair"). Reboot PC (!) and you should have your ASP.NET project template back!
Cheers!
After many hours of troubleshooting, these are the steps I took to fix the issue (on Windows 7 Ultimate). I assumed it was an issue with a corrupt installation and possible problems with registry keys, so I removed any and all Microsoft development tools using the following steps:
FULL VIRUS SCAN (just to make sure this was not related to a virus or malware). I used Microsoft Security Essentials
Downloaded Microsoft FixIt to help clean up registry keys as I deleted programs. After I deleted any program or program updates, I ran this tool to verify a clean uninstall had been done
Visual Studio 2010 - Ran the Visual Studio 2010 Uninstall Utility and removed the program. Went into Control Panel > Programs > Uninstall a program > View Installed Updates and searched for 'Visual Studio 2010', then removed any updates associated with VS2010 (and ran the FixIt program after every uninstall to verify the registry keys had been wiped)
Followed this MSDN post to remove Visual Studio 2012 (paying particular attention to the 'Optional Shared Packages' and removed any and all programs under this list, again running Microsoft FixIt to verify the registry keys were wiped)
Followed this blog post from Shawn Harrison to remove all SQL server; also referenced these two MSDN posts Uninstall an Existing Instance of SQL Server (Setup) and SQL Server Files Left After Uninstall
Uninstalled Visual Studio 2013, along with all references to 'Visual Studio 2013' in programs and installed updates; used FixIt to clean up registry keys after every install
Last but not least, I removed all MVC Visual Studio-related tools, references extensions including Web Tools and Web Platform Installer
This solved my problem with missing templates :)
(I'm soooooooo grateful this was all done on an SSD, however, I think it would have taken 5x longer with an old-spinning HD)
Cheers, everyone!
Not the solution in your case, but I had a similar issue where I could not find the MVC templates. Eventually I realized that I still had .NET Framework 3.5 selected, which of course does not provide MVC... switching to .NET Framework 4.5 let me find the MVC templates again.
You already had 4.5 selected in the screenshot, but I'm just posting this here for others who might make the same mistake as I did.
Don't forget to check that "Microsoft Web Developer Tool" was actually enabled during installation see this related stackoverflow question: How do I open a csproj with ProjectTypeGuids 349c5851-65df-11da-9384-00065b846f21?
"Microsoft Web Developer Tool" that was the problem for me
Have you tried updating the gallery
Tools>Extension and updates> Templates
To get up and running you could click Version 2012 under Web and get to the stock web applications templates which will provide you upto MVC 4
For MVC 5 you can either download Visual Studio 2013 Express Web, it roughly has the same ASP.NET features at Premium on MSDN License.
Update for Studio 2013:
Make sure you install express for Windows and not express for Windows Desktop. The Desktop version does not have the Web templates.
I had a similar issue with VS 2013 Web Express Update 3. After reinstalling stuff all week its fixed. I had to uninstall VS, delete the "Microsoft Visual Studio 12.0" directory, and reinstall VS. There are other workarounds that are more precise.
I'm at a loss.
I've installed a fresh instance of SQL Server Express 2012, loaded a fresh install of TFS2012. I attempted to hook my copy of VS2010 and I can't create a new project.
I started here and installed the service packs, the updates and the compatibility packages. I made myself an admin (of everything) from the TFS2012 console. When I go to to create a new project from the Team Explorer I get the TF30172 error.
My permission window
I'm flummoxed. I just ran this again. Anyone have any suggestions?
As far as I know Visual Studio 2010 can connect to TFS 2012 for development activities, but cannot directly create team projects for 2012. In fact, many administrative tasks (create Team Projects, build definitions, etc) in 2012 don't work from a 2010-based Team Explorer.
The solution is to upgrade to VS2012 or later, or to install Team Explorer 2012 to create team projects while continuing to use VS2010 for development.
Sadly Microsoft doesn't really declare this anywhere so it can be hard to find the answer.
See also: Can't create Team project in tfs 2012 using visual studio 2010
Visual Studio 2010 can't work on TFS 2012. Installing the latest VS.NET should solve this. Generally, the rule of thumb is, new versions are backwards compatible. So VS.NET 2010 can connect to 2010/2008/2005 etc. VS.NET 2012/13 can connect to 2013/2012/2010/2008/2005. But connecting from 2010 to 2012 won't work.
Many of my colleagues use Visual Studio 2010 and 2008, I use 2010, 2012 and 2008.
Has anyone found a good way to share assemblies and source code without having the reader having to convert the solution to whatever flavour of Visual Studio they are using?
(I realise that frameworks need to be installed etc.)
You can create multiple solutions for each per "Visual studio version". but make sure you have compatible target framework version in your projects.
If you are only distributing a single project file you can just leave out the solution file (.sln) and only include the project (.csproj) files. Visual studio will create it's own .sln file the first time the user saves the project after opening it.
If you have multiple assemblies you need included one thing you can do is have multiple .sln files (one for 2008 and one for 2010 and newer. 2010, 2012, and 2013 can all use the same .sln file) and have them point at the same .csproj files. Just create the solution in 2008 with all of its projects, then create a new empty solution in 2010 and add all of the existing projects to the 2010 solution.
EDIT: I just found out that some types of projects are not cross version compatible. If you run in to this just create a version spcific .csproj file too and have it point at the same source files (you will need to keep the projects in sync by hand if you change project settings or add/remove any new source files)
Generally, program your solution to the lowest possible .NET framework version... Sounds like 2.0 would be right up your alley. Do this because the older versions of Visual Studio do not support the newer frameworks.
If your code can all be written using one of the Express versions, then you and your colleagues should all get VS2013 Express. All of the Express versions are free, so there's little reason not to use the latest.
A while ago I created a Visual Studio Package/Add-In for Visual Studio 2010 (for those curious: http://visualstudiogallery.msdn.microsoft.com/ea23f9a7-a942-45b2-87e6-5df6ff0444ff). If I try to download that and install it in Visual Studio 2012, it doesn't work, I get a version error.
So my first thought was to see what happens if I try to port it to 2012. I downloaded and installed the VS2012 RC SDK, and basically recreated the whole thing in a separate solution and it all works. What I noticed was that many of the assemblies I had to reference (Microsoft.VisualStudio.*) were now version 11 as opposed to version 10 (for obvious reasons). After copying and pasting all the code over, I got it to work correctly in Visual Studio 2012.
My question now is this: Is it possible to have one .vsix file for multiple versions of Visual Studio (I'm guessing no.) If not, what's the correct approach to take as far as uploading the different versions? Can I upload two versions of a .vsix? Will the Add-In manager in visual studio pick the correct one automatically? Do I need to create a new package e.g. "Visual Pastie 2012"? Just looking for some guidance.
Rename the VSIX package to give it a ZIP extension and open it up. You'll find a file called extension.vsixmanifest. Inside this XML file you'll find an element called SupportedProducts which should look like the following to work in VS2012.
<SupportedProducts>
<VisualStudio Version="11.0">
<Edition>Pro</Edition>
</VisualStudio>
</SupportedProducts>
HTH