Introduction to .NET Framework 4.5.1

Introduction

This article is a brief introduction to .NET Framework 4.5.1. This framework was released with Visual Studio 2013 Preview. There are new characteristics in this framework and those are the following:

  • Windows Store Apps
  • CLR Improvements
  • Multi-core JIT improvements
  • LOH Compaction
  • ASP.NET Scaffolding
  • NuGet 2.6

Windows Store Apps

Windows Store Apps are designed for specific form factors to look better in the Windows Operating System. There is a subset available for building Windows Store apps in Visual Basic and Visual C# and that subset is called .NET for Windows Store Apps.

CLR Improvements

The following new features and improvements have been added to the Common Language Runtime (CLR) and to .NET Framework 4.5.1:

  • When you compile any app that targets the framework 4.5.1, binding redirects may be added in the app configuration file if your application or its components reference multiple versions of the same assembly. You can enable this feature for the apps that target the older version of .NET Framework.
  • Better performance of the server is always needed. So now, you have the ability to collect diagnostic information to improve the performance.
  • Performance is also improved in the startup of the application. 
  • Better experience of Exception Handling for Windows Store Applications.
  • Now you can return a value in the debugger. When you debug the application the Auto window displays the return type and value information for methods.
  • Managed Profile Guided Optimization Tool for optimize Windows Store Apps and Desktop apps also.

Multi-core JIT improvements

This feature was previously launched in .Net Framework 4.5. Microsoft extended this feature to work better in ASP.NET. Multi-core JIT has been extended to support dynamically loaded assemblies that exists in Assembly.LoadFrom. Multi-core JIT is enabled automatically for ASP.NET applications. The performance of ASP.NET is improved in .NET Framework 4.5.1 Preview with the Multi-core JIT improvements.

LOH Compaction

In the .Net Framework 4.5, Large Object Heap Fragmentation is released for the better use of free blocks. LOH Fragmentation is the enhancement of Garbage Collector. With the release of .NET Framework 4.5.1 Preview, the next logical step is taken by Microsoft which is LOH Compaction. You can now instruct the Garbage Collector to compact the LOH, either as a part of natural GC or forced GC. LOH Compaction is the solution of the issue but it is expensive and should only be used after significant performance analysis. The developer can't use this in the application every 5 minutes. If an application does not have the LOH Fragmentation issue then they do not want to use the LOH Compaction. It totally depends on them.   

ASP.NET Scaffolding

ASP.NET Scaffolding is a code generation framework for ASP.NET Web Applications. The Visual Studio 2013 Preview has pre-installed code generators for MVC, Web Forms and Web API Projects. Using ASP.NET Scaffolding the amount of time is reduced to develop standard data operations in the Web Development Projects. There are some following prerequisites for the ASP.NET Scaffolding:

  • Visual Studio 2013 Preview
  • Web Developer Tools
  • ASP.NET Web Framework and Tools 

NuGet 2.6

With the release of Visual Studio 2013 Preview, NuGet released the 2.6 version. If you do not know what NuGet is then here is some information. When you use to install the NuGet package, it copies the library files and automatically updates projects that includes references, config file and so on. Microsoft also published a list for NuGet Packages that is helpful to discover the releases of NuGet packages. NuGet 2.6 released in Visual Studio 2013 Preview provides better support for the applications that directly depends on multiple versions of a single NuGet package. This support is only available for Desktop apps, not for Windows Store Apps or Windows Phone Apps.

Next Recommended Readings