The Core 1..NET
It has been more than ten years since the release of.NET Framework.NET has always been a closed product of Windows platform. Although there is Mono project right. NET implemented the platform porting, but after all, not Microsoft “own”, Mono is still not perfect in some functions.
Launched by Xamarin and Microsoft in 2014. NET Foundation, which Microsoft opened in November 2014. NET Core framework source code. It was born under the umbrella of the.NET Foundation. NET Core.
.NET Core was called.NET vNext or.NET 5 in its early days, and it wasn’t officially named.NET Core 1.0 until January 2016. On May 6, 2019, Microsoft reintroduced. NET 5. We’ll explain more later.
It should be noted that although Microsoft regards.NET Core as. NET Core and the.NET Framework are still two separate products. The.NET Framework will also continue to be updated and maintained.
In 2019, Microsoft released the next development plan of.NET technology, and in 2020, Microsoft will. NET Core and the.NET Framework are integrated as. NET 5.
One of the major differences between.NET Core and the.NET Framework is that.net Core is completely open source. It is hosted on GitHub and allows any developer to contribute code to the project..NET Core no longer only supports Windows, but also supports Linux, macOS and other platforms.
You could say.net Core is. The new, or evolved, version of the NET Framework is Microsoft’s first official cross-platform (Windows, macOS, and Linux) Application Framework.
.NET Core was developed to be cross-platform. .NET platform, for which.net Core will include.net Framework libraries. But unlike the.NET Framework,.net Core uses a Package management approach, where applications just need to get the components they need (unlike the.NET Framework, which uses a Package installation approach). At the same time, each package has its own Version Line, which no longer requires the application to update with the mainline Version.
Features of 1.1.NET Core
.net Core is about innovation, open source, and cross-platform, so to speak. NET Core is a cross-platform framework for doing more fun things in less time.
.NET Core has the following features.
- Cross-platform. Readers can create one. NET Core application that runs on Windows, Linux, and macOS.
- Unity and compatibility. Use a unified.NET standard library, use the same code for all platforms, and use the same language and tools to reuse readers’ skills, reducing learning costs.
- Command line tools. It includes easy-to-use command-line tools for local development and continuous integration solutions.
- The modern world. Multi-language support (C#, VB, F#) and modern design constructs such as generics, language integrated query (LINQ) and asynchronous support.
- Open source. The.NET Core platform is open source. The source code for its runtime, libraries, compilers, languages, and tools is open source on GitHub, accepts code contributions, and is available under broad MIT and Apache 2 open source licenses.
- Official support from the.net Foundation. .NET Core by Microsoft. The.NET Foundation is created and handed over to the community to operate independently, with the foundation providing support for.NET Core.
The Core of 3.1 1.2.NET
The RedHat DevNation summit announced the release of.net Core & ASP.net Core 1.0 RTM on June 27, 2016.
At the end of this book, the latest version of.NET Core is 3.1.0, updated on October 15, 2019.
.net Core and other platforms
.NET Core is often compared to other platforms, especially its source.NET Framework and another similar open source platform, Mono.
The Core and at 2.1.NET. NET Framework
NET Core and the.NET Framework are subsets and supersets, and.net Core will implement some of the.NET Framework functions (mostly without the user interface). Examples include JIT (RyuJIT in.NET Core), garbage collector (GC), and types (both primitive and generic types). In the future, the.NET Framework and.NET Core will also evolve separately, but they will also use each other’s capabilities, such as technologies like the.NET Compiler Platform and RyuJIT, which will eventually merge in 2020.
2.2.NET Core with Mono
Mono is another one with a long history. The cross-platform open source version of.NET, which is not officially owned by Microsoft, is driven by a community of its own, an ecosystem that has also developed cross-platforms like Xamarin. NET mobile application. .net Core and Mono will continue to have a collaborative relationship, and Mono will continue to maintain community-driven maintenance and development. NET Core will be officially developed, and the two will complement each other.
2.3.NET Core and ASP.net Core
NET Core and ASP.NET Core did not have a master-slave relationship at the beginning of ASP.NET Next. ASP.NET Core had its own runner and tools at the time, called Project K, later changed to Project K. NET Execution Environment (DNX). DNX has the ability to run on its own without relying on.NET Core, but this can lead to a double header between.NET Core and ASP.NET Core. As.NET Core matured, Microsoft decided to integrate the two separate product lines, so DNX switched to.net Core and ended development. DNX was replaced by.NET Core and the.NET command-line Interface (CLI), which was released in 1.0 RC2.
3. The development history of ASP.net
ASP.NET should not be placed here in parallel with the above three frameworks, but because ASP.NET is so well known, I felt it was important to clarify their relationship.
ASP.NET was originally. NET Framework for developing Web applications, it is an improved version of ASP technology. It is important to note that ASP and ASP.NET are two completely different products. Similarly, VB and VB. Net are completely different products. ASP and VB are both 20th century technologies and are somewhat “old” so I won’t repeat them here, but be sure to distinguish between them.
Early ASP.NET provided a way to render web pages called WebForm, which made web development as simple and visual as WinForm development. However, with the rapid development of Web technology, WebForm has gradually faded out of the historical stage due to its low efficiency, closed and difficult to customize defects.
With the release of.net Framework 3.5 in 2009, Microsoft provided a new way to render ASP.NET web pages, called ASP.NET MVC Framework. This framework follows the MVC design pattern, separates the view from the business logic, and greatly improves performance and customizability.
After years of development, it has been updated to ASP.NET MVC 6 and is fully adopted. NET Core project structure, support. NET Framework,.net Core, and Mono. In the future evolution of ASP.NET MVC, ASP.NET MVC 6 will no longer exist and will instead be called ASP.NET MVC Core 1.0.
Figure 2.1 shows the evolution of the MVC version.
Figure 2.1
One of the best books to get started with ASP.NET Core is ASP.NET Core in Plain English.
If you want to learn ASP.NET Core, one of the best books to get started with is ASP.NET Core in plain English.
Content abstract
This book is a systematic introduction to http://ASP.NET Core, Entity Framework Core, and http://ASP.NET Core Identity Framework technologies. It aims to help readers gradually understand and master http://ASP.NET Core. This book uses http://ASP.NET Core to build an actual project from scratch. Starting with basic console applications, this section describes the basic startup process of http://ASP.NET Core and the practical applications of each technology in the http://ASP.NET Core framework. It also introduces some advanced concepts of http://ASP.NET Core. In this book, we will develop a school management system, which contains clear operation steps and lots of practical code to help readers to apply the knowledge of http://ASP.NET Core to practical project development, and finally we will deploy the development of the project into a production environment. By reading this book, you will learn how to develop Web applications using http://ASP.NET Core and be able to make strategic decisions when selecting technologies for new projects.
This book is suitable for readers who have some C# programming experience and HTML and JavaScript foundation, and are interested in http://ASP.NET Core. It can also be used as a teaching book for related majors in colleges and universities and as a teaching material for training schools.
The applicable objects
This book is suitable for developers with some C# programming experience and HTML/JavaScript background who are interested in http://ASP.NET Core, including the following objects.
- .NET engineer.
- Computer related major in.NET or web design.
- Developers who have switched to.net programming from other object-oriented languages.
Structure of the book
The book is divided into the following five parts.
Part 1 (Chapters 1 to 9) introduces the basics of http://ASP.NET Core, such as middleware, environment variables, and configuration information, and briefly explains the complete project structure of http://ASP.NET Core.
The second part (Chapter 10 ~ 20) introduces and uses MVC model and routing middleware, combined with TagHelper and other new features provided by http://ASP.NET Core, to complete the addition, deletion, modification and search of student information and upload pictures. This paper introduces the relationship between simple warehouse mode and dependency injection, and prepares the foundation for building management system.
The third part (Chapters 21 to 29) analyzes and handles common problems in actual business scenarios by setting up a basic management system, such as authentication and authorization, client and server authentication, configuration information, EF Core data access, data paging, and unified exception handling.
The fourth part (chapter 30 ~ chapter 38) introduces the role and significance of architecture. Based on the idea of architecture, the design pattern is applied to optimize the warehouse pattern combined with C# generic characteristics, and the multi-layer architecture is established. Create a domain-driven design project using concurrency, LINQ, and common features in Entity Framework Core.
Part 5 (Chapters 39 to 42) covers a simple Web API primer, deploying the http://ASP.NET Core project, and upgrading from ASP.net Core 2.2 to http://ASP.NET Core 3.1