Question

Our clients use a vb6 version of our software.

We are upgrading them to a .NET application written in C#...

Is there less bulk using .net 2.0 than .net 3.5?

My definition of less bulk would be: Smaller size, smaller installation time, etc.

Most of them probably already have 2.0 anyway.

I only ask because I would like to take advantage of LINQ in 3.5.

Was it helpful?

Solution

For taking advantage of LINQ, you need 3.5 (unless you want to use LINQBridge with 2.0).

For a smaller installer, .Net 3.5 Sp1 has a new feature called "Client Profile".

The .NET Framework Client Profile setup contains just those assemblies and files in the .NET Framework that are typically used for client application scenarios. For example: it includes Windows Forms, WPF, and WCF. It does not include ASP.NET and those libraries and components used primarily for server scenarios. We expect this setup package to be about 26MB in size, and it can be downloaded and installed much quicker than the full .NET Framework setup package.

OTHER TIPS

  1. Is not installing .NET 3.5 just to save a few Mb really that much more important that gaining a huge increase in productivity with LINQ and other .NET 3.5 features?

  2. Why start off behind in technology?

The .Net 3.5 runtime is ~50Mb. The 2.0 runtime is ~23Mb.

But if you control the deployment or installation, that really shouldn't be an issue. This is especially true for 'clients' vs 'customers', and the word client involves and on-going, personal relationship. If it comes to it, send them a CD. Then anything under 700Mb is all the same.

Check out LINQBridge: http://www.albahari.com/nutshell/linqbridge.aspx

Adding LINQ support to .net 2 (.net 3.5 still uses CLR 2.0).

.NET 3.5 is .NET 2.0 + more libraries and extensions, so yes, the install is bigger. In my opinion however, it is very much worth the extra bulk because of the extra stuff it gives you.

If it's a VB6 app, you should check which Windows versions the app is currently used on, and select the .Net version accordingly. AFAIK 3.5 does not run on W2K.

If you would like to take advantage of LINQ, then go for 3.5! I find there's not more 'bulk' when using it myself, but unless you want to use LINQ, then either is fine.

Keep in mind that certain OSes (Windows 2000 Server) won't let you install .NET 3.0 or 3.5, so you may have to stick with 2.0 for that reason.

I would suggest that you go straight with visual studio 2008 and .net 3.5 sp1, 2.0 is the basis of 3.5 and you can easily start using 2.0 and then start to use 3.5 functionalities.

Furthermore 3.5 SP1 also brings tweaks to the 2.0 framework which are nice to have.

I suggest you to go directly to 3.5 because you will be less far away (in the future ... in 3-5 years) to change to other version of framework. If in 5 year .Net is at version 5, the jump will be smaller to do. So, VB6 to 3.5 is what I suggest you.

The size of the framework is not very high, less than 60 megs... not a big deal now I think.

Also note, depending were you install the .NET framework it might be irrelevant how much extra bulk there is. The .NET Framework installs are relatively small in modern terms.

As for LINQ, it will save you a lot of time and effort, and offers a quick way to get at data. However it also depends on the clients the application will be distributed out to.

I'd say at that, go with 3.5 unless there is another major roadblock on the clients for whatever reason.

As others have pointed out, the .NET 3.5 install is longer and larger than .NET 2.0. Keep in mind that .NET 3.0 and .NET 3.5 are both extensions on top of the .NET 2.0 CLR.

I would still say upgrade from VB6 directly to .NET 3.5 (actually .NET 3.5 SP1) and VS2008, as long as your client operating systems support that version of the Framework (otherwise you will need to choose the lowest common Framework version, which very well may be .NET 2.0). You will save yourself a lot of time/effort in the long run.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top