In the ASP.NET Core series, we are going to go through a detailed example of how to use .NET Core, Angular and MySQL for ASP.NET Core web application development.
If someone asks: “Why this combination of technologies”, without getting in too much detail, the answer would be:
- The technologies are free of charge
- Applications can be deployed on both Windows and Linux OS
- Production-grade performance
- … And because we can 🙂
What are we going to do in this guide?
We are going to use MySQL as our database. First, we are going to install the MySQL server, create tables and populate them with some data.
Then, we are going to step into the world of ASP.NET Core Web API development. It is going to be our server-side part of the application. As we progress through the ASP.NET Core series, we are going to use repository pattern, generics, LINQ, entity framework core, create more projects and services to demonstrate some good practices. Overall we will try to write the application as we would in the real-time environment. Furthermore, you will learn about ASP.NET Core architecture and code organization, so you can make it more readable and maintainable.
There are three approaches to using Entity Framework: Database First, Code First and Model First. In this tutorial, we are going to use the Database First approach, because we want to create our database prior to typing .NET code. This approach is good when you know the structure of your database beforehand, and we get to use the visual editor which makes the creation of relationships between tables much easier.
After we finish the ASP.NET Core series, we are going to introduce three of the most popular client frameworks (Angular, React or Vue.js) to consume our Web API. This will result in creating a full-stack web application.
In the end, we are going to publish our app on both Windows and Linux OS, and finish strong by completing the entire development cycle.
For this series you will need:
To install MySQL on your machine, follow this guide.
You can install Visual Studio 2019 by following these instructions (In the section where you select workloads, please select ASP.NET and web development section).
- Basic C# and Intermediate C# knowledge
- Knowledge of the Object-Oriented Programming in the C# is a plus
This tutorial will be separated into several parts:
- Creating a Database for Our Project
- Basic Code Preparations
- Custom Logging in ASP.NET Core
- Repository Pattern with Entity Framework Core
- Using Repository for GET Requests
- Using Repository for POST, PUT and DELETE Requests
To improve your API with some advanced techniques you might want to check out:
To learn how to consume ASP.NET Core Web API, check out:
- Consuming ASP.NET Core Web API With Angular
- Consuming ASP.NET Core Web API With React
- Consuming ASP.NET Core Web API With Vue.js