Microsoft recognized the need to unify the frameworks and started producing .NET Core, a framework that could run console programs as DLLs, and thus .NET Core web apps, on Linux and Windows.
April 8th, 2020 • Buildable News & Resources
.NET Core 3 is the most important release of the .NET framework in decades. Here’s why.
The .NET Framework is the popular C# framework created by Microsoft used by programmers to build desktop apps, server apps, mobile apps, and websites on a variety of devices.
It was released to the public in 2002 and targeted only Windows platforms at the time. In 2004, a successful open-source effort called Mono was started to port the .NET framework to Linux, giving programmers the choice to have their .NET apps work on Linux. Of course, the user interface side of things was incompatible, as desktops apps built for Windows would use Windows Forms libraries and those for Mono would use Gtk#.
A decade later, building on its success, the Mono founders created Xamarin so programmers could build mobile apps in C# targeting Android, iOS, and Windows Mobile without requiring the use of native languages. Xamarin was acquired by Microsoft in 2016.
At that point, there were multiple versions of the .NET framework and programmers needed to know in advance on which platform (Windows, Linux or mobile phones) their apps were to run so they could select the correct framework before starting to program – as one might suspect, this became tedious.
Microsoft recognized the need to unify the frameworks and started producing .NET Core, a framework that could run console programs as DLLs, and thus ASP.NET Core web apps, on Linux and Windows.
.NET Core quickly became popular because it allowed application programmers to build web applications that could run on Windows, Azure, and Linux without being recompiled. That was genius.
However, .NET Core could not be used for building applications with a graphical user interface (GUI).
To remedy this problem, Microsoft announced in mid-2019 that it was working on a next-generation .NET Core framework which would allow programmers to:
Today, .NET Core 3 is the standard for building new applications and Microsoft discourages programmers to build applications targeting older frameworks.
Earlier versions of .NET Core required programmers to hunt down specific NuGet packages and to deal with workarounds for libraries that were not well supported. For example, Entity Framework (EF) behaved differently on .NET Core and legacy .NET applications.
Today, these issues are all resolved. .NET Core 3 comes with the entire ecosystem of libraries and NuGet packages. We have tested it heavily and it works well, both for WPF Windows applications and ASP.NET apps.
Our experience working with .NET Core has been incredibly rewarding. We were able to bring production C# code written in the last 18 years into our new applications without having to rewrite much of it. The automation of building .NET apps on Linux saved us from having to manage Windows servers and Team Foundation Servers (TFS).
There are a few quirks involved in porting a traditional ASP.NET web app over to .NET Core, but overall the process isn’t too complicated thanks to it being a modern framework. Read more on .NET Core 3 at Microsoft.
Do you have a project that needs to migrate to .NET Core? The Buildable team would love to help. Give us a call today at (503) 468-4890 or email connect@buildableworks.com.
Talk with an expert at Buildable about your project.
Copyright © 2024 Buildable.
All Rights Reserved
Privacy Policy | Terms of Service