News

.NET Core 2.1 Released, Along with Entity Framework, ASP.NET Versions

After a series of previews, Microsoft this week announced the final release of .NET Core 2.1, along with its like-versioned associates, ASP.NET Core and Entity Framework Core.

.NET Core is a general-purpose, cross-platform, open source development platform maintained by Microsoft, the .NET Foundation and general .NET community. Developers can use it on Windows, macOS and Linux to create device, cloud and embedded/IoT applications. Its ASP.NET and Entity Framework cousins are used for Web and data-driven development, respectively.

Although it has been around for a couple of years, .NET Core got a big boost with last year's introduction of .NET Core 2.0, with provided access to thousands more APIs, turning it into a primary focus point for future Visual Studio development.

One of the major features of .NET Core 2.1 is an implementation of associated tools, which are .NET Core console apps managed with a new NuGet deployment and extensibility mechanism based on NPM global tools, used with the NPM package manager for JavaScript.

"By default, these tools are framework-dependent applications and include all of their NuGet dependencies," Microsoft's Rich Lander, said in a blog post yesterday (May 30). "This means that .NET Core tools run on all .NET Core supported operating system and chip architecture by default, with one set of binaries. By default, the dotnet tool install command looks for tools on NuGet.org. You can use your own NuGet feeds instead."

Example tools, as seen here, provide functionality such as: finding outdated NuGet packages and applying updates; managing GitHub Issues, searching Microsoft documentation; and many more.

"We expect a whole new ecosystem of tools to establish itself for .NET.," Lander said.

Other highlights of v2.1 include:

  • Build performance improvements, which Lander described as "perhaps the biggest focus of the release." Now, large projects have markedly speedier build times from v 2.0 (down from 107 seconds to 10.1), with smaller projects showing a less dramatic decrease in build times, from 6.6 seconds to 1.9 seconds.
    Faster Builds
    [Click on image for larger view.] Faster Builds (source: Microsoft).
  • Runtime performance improvements and others affecting the Just-In-Time (JIT) compiler, threading, networking and more.
  • A new Span<T> type, said to help usher in a new era of .NET-based memory-efficient and high performance computing. Lander explained: "Today, if you want to pass the first 1,000 elements of a 10,000 element array, you need to make a copy of those 1,000 elements and pass that copy to your caller. That operation is expensive in both time and space. The new Span<T> type enables you to provide a virtual view of that array without the time or space cost. Span is a struct, which means that you can enable complex pipelines of parsing or other computation without allocating. We are using this new type extensively in corefx for this reason."
  • Support for Brotli compression, which Lander said provided speed similar to deflate but with denser compression.
  • New cryptography APIs (including APIs based on Span<T>).
  • A Windows Compatibility Pack, which helps port existing .NET Framework code to .NET Core while letting developers use an additional 20,000 APIs.
  • A preview of tiered compilation, said to help the runtime more adaptively use the Just-In-Time (JIT) compiler to get better performance.
  • Several more, including: SourceLink, for debugging; self-contained application publishing; and Docker functionality tweaks;

New 2.1 versions were also announced for Entity Framework Core and ASP.NET Core.

About the Author

David Ramel is an editor and writer for Converge360.

comments powered by Disqus

Featured

  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

  • .NET 9 Preview 3: 'I've Been Waiting 9 Years for This API!'

    Microsoft's third preview of .NET 9 sees a lot of minor tweaks and fixes with no earth-shaking new functionality, but little things can be important to individual developers.

  • Data Anomaly Detection Using a Neural Autoencoder with C#

    Dr. James McCaffrey of Microsoft Research tackles the process of examining a set of source data to find data items that are different in some way from the majority of the source items.

  • What's New for Python, Java in Visual Studio Code

    Microsoft announced March 2024 updates to its Python and Java extensions for Visual Studio Code, the open source-based, cross-platform code editor that has repeatedly been named the No. 1 tool in major development surveys.

Subscribe on YouTube