.NET, 7.0, 2003, what's it all mean?

A reader asked the question:

Is .NET, in fact, the SAME THING as Visual Studio 7.0? Could it be possible that a developer with .NET would be able to simply open the project file and recompile without rewriting code?

.NET itself is a runtime. Unfortunately, the word ".NET" has started creeping into a lot of our product names, including our latest Server OS, and a few versions of Visual Studio.  Visual Studio .NET is, indeed, version 7.0. The latest public offering, Visual Studio .NET 2003 (codename Everett), is version 7.1.  The next product we're going to offer, codename Whidbey (and named externally as Visual Studio 2005), is version 8.0.


(I have a little more on this subject here: http://blogs.msdn.com/arich/archive/2003/12/17/44187.aspx)


You'd have to talk to marketing as to why we can't use release names that make sense. Believe me, they make no sense inside the company, either. (At least the next version won't have ".NET" in the product name. That was starting to bug me.)


Furthermore, you should be able to open a VS7.0 project file in VS7.1 (.NET 2003). Upon opening it, the IDE will ask if you want to convert the project to 7.1. Be warned, however, that this conversion is *not* reversible.


As to your question about being able to take 7.0 code into other versions, and compile immediately, the answer is most usually no. Improvements, bug fixes, and conformance all tend to hurt a compiler's backwards compatibility, and occasionally, we find it necessary to “break“ our upgrading customers in the name of progress. We try to do this as infrequently as possible. For help on converting from 7.0 to 7.1, I suggest you check out the breaking changes article on MSDN.