MetadataDiffViewer updated to .NET Framework 4.0 beta1
I have updated my MetadataDiffViewer to the recent .NET Framework 4.0 beta1 so you can see differences by 3.5 SP1.
You can note some interesting changes:
-
System.Web.Routing and System.Web.Abstractions are empties because their classes were included into System.Web. The attributes TypeForwardedToAttribute and TypeForwaredFromAttribute tell to CLR, compilers and serializer to remap to new location so old builds based on 3.5 can work;
-
new assemblies System.Web.DataVisualization and System.Windows.Forms.DataVisualization containing new charting controls for ASP.NET and WinForms application;
-
some new nice classes into System.Core: lots of Action<T,..Tn> and Func<T,..Tn>, a new ExpressionVisitor to navigate into expression tree, and some new static methods for Expression class allowing to create more complex expressions containing try/catch, switch, loop, goto, ecc;
-
new assembly System.ComponentModel.Composition containing Managed Extensibility Framework;
-
new namespace System.Diagnostics.Contracts containing the class Contract with usefull methods for compilation and runtime checks;
-
new namespace System.Collections.Concurrent with ParallelFx collections: Queue, Stack, Dictionary and Partitioner;
-
new classes Tuple<T,..Tn> used by F# but that we can use for fast values storage.
In sum, there are so many new features to study :-)