I'm currently working on an client application developed using winforms on .Net 2.0. Are there any reasons I should upgrade to 3.5? I already use LINQ (with linqbridge) and I can think of no other benefits I would get from 3.5 (I will not start using WPF or a new data access technology ...)
Does your application need to use time zones at all? TimeZoneInfo
is vastly better than the pre-3.5 alternatives.
If you only need LINQ to Objects, then with LINQBridge you should be mostly okay. Of course you may come across non-LINQ situations where you'd benefit from expression trees, but they're relatively rare.
If you'll find deployment easier with .NET 2.0 SP1, then by all means stick with it. That's not to say there aren't nice things in .NET 3.5, but if you don't want to use WCF, WPF etc then a lot of those benefits won't be applicable to you.
.NET 3.5 will give you simple properties declaration:
public property SomeProperty { get; set; }
Extension methods is a very cool feature:
public static class Extensions
{
public static bool IsNull(this string text)
{
return text == null;
}
}
And then in your code:
var myStr = null;
if (myStr.IsNull()) {
// your logic
}
If you will develop ASP.NET application then new version will give you integrated ASP.NET AJAX, ASP.NET Dynamic Data which is the most simple way to make data-driven applications, new ListView, DataPager and Charts controls.