Traps for converting .net 2.0 solution to .net 3.5

We are moving the solution with 20+ projects from .net 2.0 to 3.5 and at the same time moving from Visual Studio 2005 to 2008. We are also moving from MS Entlib 2.0 to 4.0 at the same time.

  • Are there any reasons why the Visual Studio Wizard transforms the solution for us?
  • Fully compatible with 3.5 to 2.0?
  • Is Entlib 4.0 compatible with backward compatibility with 2.0?

Edit: I could be a little embarrassed when I wrote this, backward compatibility should be implied; is there anything that exists in project 2.0 that will not work / compile in 3.5

:)

// W

+6
visual-studio migration enterprise-library
source share
6 answers

We are updating a fairly large solution (20+ projects) from 2005 to 2008, but it was really trivial. Updating a project is only basically. The underlying structure is still the same, since 3.0 / 3.5 and 2.0 use the same basic structure.

As mentioned above, despite the fact that you are updating, you do not need to change the link to the infrastructure for projects - in fact, by default it leaves the structure in 2.0 instead of changing it to 3.0 / 3.5. This means that you will not be able to use the 3.0 / 3.5 functions until you change the link (Project Properties Page, Application Table), but it also means that you are much more confident that there will be no additional support (how do you get the error with the addition of code 3.0 / 3.5 until this link is changed).

The new features of TFS 2008 should not be overlooked, although you do not need to update the application to be able to use TFS 2008.

From 1.1 to 2.0, the conversion was much more painful ...

+6
source share

I upgraded several projects from Visual Studio 2005 to 2008 using the Wizard, and they all became painless (well ... except for this C ++ beast, but you're still talking about .NET).

Keep in mind that you do not need to update the .NET version. Visual Studio 2008 supports .NET 2.0, 3.0, and 3.5. However, 3.5 is in any case compatible with feedback, since it is located on the same CLR and is more or less just additional libraries. And the "old" libraries remain the same.

I do not know about Entlib.

Why don't you just try and run your unit tests? :)

+4
source share
  • Are there any reasons why the Visual Studio wizard cannot transform the solution for us?

Not.

  • Is 3.5 compatible with 2.0?

Not. In 3.5 there are new features that will not carry back. And (IIRC) there are some deviations from 2.0 to 3.5.

  • Is Entlib 4.0 fully compatible with 2.0?

I do not think so. 3.5 is indicated as a requirement.

Make a backup, run the wizard, see what happens. It may take some time for such a short project, but you will be able to determine if it will build / run as expected.

+1
source share

When I upgraded from EntLib 2.0 to 4.0, I noticed the following source code violation if you use the Caching application block:

  • In 2.0, you get the cache manager using CacheManager cache = CacheFactory.GetCacheManager() .
  • In 4.0, you need to replace CacheManager with ICacheManager or it will not compile.

Also, if you write your own exception formatting class for the exception handling block:

  • In 2.0, you need to define one constructor with a signature (TextWriter, Exception) .
  • In 4.0 this is deprecated, and you need to define a second constructor with a signature (TextWriter, Exception, Guid) .
+1
source share

When migrating from EntLib 3.1 to 4.0, no changes should occur:

β€œThere is no change in the public API in the change. This was one of the EL4 design goals. Just remember that EL4 requires .NET3.5.

- Gregory "

http://blogs.msdn.com/agile/archive/2008/05/16/enterprise-library-4-0-for-visual-studio-2008-released.aspx

(Grigory - Program Manager for EntLib)

I am not sure about 2.0 to 3.1. If I find suitable people @p & p tomorrow, I will update it.

Ade

+1
source share

Check out this link on how to migrate from .net 2.0 to .net 3.5

http://codingreview.blogspot.com/2009/09/how-to-migrate-your-application-from.html

0
source share

All Articles