Back to: ASP.NET Core Web API Tutorials
ASP.NET Core MVC and Web API Online Training Program:
I am the Author of Dot Net Tutorials and all the .NET Core-Related stuff on this website is written by me. I am having 10+ years of working experience in Microsoft .NET Technologies. Daily, I am getting lots of emails about providing Online Training on ASP.NET Core MVC and Web API and hence I am planning to provide online training on ASP.NET Core.
Next Batch Coming Soon
Why Learn .NET Core?
.NET Core is the new version of the .NET Framework, which is a free, open-source, general-purpose maintained by Microsoft. It is a cross-platform framework that runs on Windows, Linux, and macOS. The .NET Core framework can be used to build different types of applications such as console applications, desktop applications, web applications, mobile, cloud, IoT, machine learning, Microservices, games, etc…
.NET Core is written from scratch to make it a modular, lightweight, fast, and cross-platform framework. It includes the core features that are required to run a basic .NET Core app. Other features are provided as NuGet Packages, which you can add to your application as needed. In this way, the .NET Core application speed up the performance, reduce the memory footprint, and becomes easy to maintain.
What we Provide in our Online ASP.NET Core MVC and Web API Training:
In this ASP.NET Core Online Training Program, we provide the Basic, Intermediate, and advanced concepts of ASP.NET Core and you can start developing applications right away. This training is designed for Students, Beginners as well as Professional Developers who want to learn ASP.NET Core step by step from the very basic to the advanced concept using real-time examples. Here, we will provide the complete .NET Core training which includes ASP.NET Core Basics, ASP.NET Core MVC, Entity Framework Core, and ASP.NET Core Web API.
How to join our online ASP.NET Core MVC and Web API Training Program?
Please fill out the following form. Once you fill out the form, then we will contact you and share the details about the ASP.NET Core MVC and Web API Online Training program. Even if you want you can contact us through WhatsApp (+91 7021801173) number and EmailId (onlinetraining@dotnettutorials.net).
ASP.NET Core Training Registration Link: https://forms.gle/YKgnzwMFBDtPDhkJA
Note: Class Recording and Class Note will be provided
Course Duration: 3-4 Months (Daily 1.30 hours)
Course Fee: 7000 (INR)
New Batch: Coming Soon
Contact us through Our WhatsApp Number: +91 7021801173
Contact us through Our Email Id: onlinetraining@dotnettutorials.net
Registration Link: https://forms.gle/YKgnzwMFBDtPDhkJA
Prerequisites:
You should have basic knowledge of HTML, CSS, and C#. That does not mean you need to be an expert on these technologies. What you need is basic knowledge of HTML, CSS, and C#. If you have any questions, please put a comment in the comment box.
ASP.NET Core Basic Syllabus
ASP.NET Core Basic Concepts
- Introduction to ASP.NET Core Framework
- NET Core Environment Setup
- Creating ASP.NET Core Web Application
- NET Core Project File
- NET Core Main Method
- NET Core InProcess Hosting
- Kestrel Web Server in ASP.NET Core
- NET Core OutOfProcess Hosting
- NET Core launchSettings.json file
- NET Core Startup Class
- NET Core appsettings.json file
- NET Core Middleware
- NET Core Request Processing Pipeline
- wwwroot folder in ASP.NET Core
- Static Files Middleware in ASP.NET Core
- Configuring Default Page in ASP.NET Core
- Developer Exception Page Middleware in ASP.NET Core
- NET Core Command Line Interface
ASP.NET Core MVC Syllabus
Exploring ASP.NET Core MVC
- Overview of Microsoft Web Technologies
- Overview of ASP.NET 4.x
- Introduction to ASP.NET Core MVC
- Exploring a Razor Pages Application
- What is ASP.NET Core?
- NET Core Features
- Advantages of ASP.NET Core
- MVC Pattern
- Understanding ASP.NET Core MVC
- NET Core vs. ASP.NET MVC vs. ASP.NET Web Forms
Designing ASP.NET Core MVC Web Applications
- NET Core Environment Setup
- ASP .NET Core First Application
- Project Layout
- Understanding Life Cycle of ASP.Net Core Request
- Designing Models, Controllers, and Views
- Planning Model Classes
- Planning Controllers
- Planning Views
- Architecting and MVC Web Application
Configure Middlewares and Services in ASP.NET Core
- Configuring Middlewares
- Configuring Services
- Working with Static Files
- Creating custom middleware
- Using dependency injection
- Injecting a service to a controller
Developing Controllers and Actions
- Controllers Overview
- Action Methods and IActionResult object
- Passing data from Controller to View
- Understanding Action Selectors
- Action Filters
- Building Custom Action Filters
- Configuring Routes
- Asynchronous Action Methods
- Configuring routes by using the routing table
- Configuring routes using attributes
- Adding an action filer
Developing Views
- Introducing Razor View
- Advantages of Razor View
- Razor Syntax
- Types of Views
- Partial Views
- Layout Pages
- Special Views
- View Categorization based on Model
- Using HTML Helpers and Tag Helpers
- Reusing Code in Views
Developing Models
- Creating MVC Models
- Working with Forms
- Validate MVC Application
- Adding a model
- Working with Forms
- Add Validation
Helpers in ASP.NET Core MVC
- Html Helpers
- Built-In Html Helpers
- URL helpers
- Tag Helpers
- Custom Tag Helpers
Model Binding
- Html Form behavior
- Model Binder Overview
- DefaultModelBinder
- Binding to Complex Classes
- IFormCollection Model Binding
- IFormFile Model Binder
- Bind Attribute
- TryUpdateModelAsync
Routing
- Url Routing Overview
- Custom Routes
- Attribute Routing
- Routing Constraints
Validations and Data Annotations
- Data Annotations and Validations Overview
- Validations with Data Annotation
- Server Side and Client-Side Validation
- Custom Server-side validation
- Model level validation using IValidatableObject
- Custom unobtrusive Client-side Validation
- Remote Validation
Using Entity Framework Core in ASP.NET Core
- Introduction
- SQL Server & Local DB
- Installing EF Core
- EF Core Architecture
- EF Core Library
- Creating & Implementing DB Context
- Configuring EF Services
- Entity Framework Migrations
- UP & Running
- Various Approaches in EF
- Creating CRUD Application in MVC
ASP.NET Core – Web Caching
- Cache Tag Helpers
- Memory Caching Introduction
- In-Memory Caching
- Response Cache
- Distributed Cache
Using Layouts, CSS, and JavaScript in ASP.NET Core MVC
- Using Layouts
- Using CSS and JavaScript
- Using jQuery
- Applying a layout and link views to it
- Using CSS
- Using JavaScript
- Using jQuery
Client-Side Development
- Applying Styles
- Using Task Runners
- Responsive design
- Use gulp to run tasks
- Styling using Sass
- Using Bootstrap
Testing and Troubleshooting
- Testing MVC Applications
- Implementing an Exception Handling Strategy
- Logging MVC Applications
- Testing a Model
- Testing a controller using a fake repository
- Implementing a repository in the MVC project
- Add exception handling
- Add logging
Managing Security
- Authentication in ASP.NET Core
- Authorization in ASP.NET Core
- Defending from Attacks
- Use Identity
- Add Authorization
- Avoid the Cross-Site Request Forgery Attack
Performance and Communication
- Implementing a Caching Strategy
- Managing State
- Two-way communication
Bundling and Minification
- What is Bundling and Minification in ASP.net Core?
- Bundler and Minifier Extension
- How to Bundle your files
- How to minify your Bundles
- Convert to Gulp
Hosting and Deployment
- On-premise hosting and deployment
- Deployment to Microsoft Azure
- Microsoft Azure Fundamentals
- Deploying a Web Application to Microsoft Azure
- Upload an Image to Azure Blob Storage
ASP.NET Core Web API Syllabus
Introduction and Environment Setup
- Introduction to ASP.NET Core Web API
- Fundamental REST API Development Principles
- What is the need for Web API?
- What is Web API and which framework should we use for the development
- What are REST and RESTful Web APIs
- List of all software required for Web API development
- Install the Dot Net Core framework and verify the installation
- Install the SQL Server
- Install SQL Server Management Studio (SSMS)
- Install Visual Studio 2022 Community Edition
- Install and Explore PostMan
Project Setup and Configurations
- Create ASP.NET Core API Project with Visual Studio
- Create ASP.NET Core API Project with Visual Studio Code
- Default Asp.Net Core Project Files
- Explore ASP.NET Core Web API Project and Explore Swagger API
- Testing the Web API Project with Postman and Swagger
- .NET 6 vs Previous Versions
- CORS Configuration
Fundamentals of HTTP, HTTP Verbs and Status Codes
- What is HTTP and why do we need to know about HTTP?
- HTTP Request and HTTP Response with its components
- HTTP Verbs or HTTP methods
- Status Code and their categories
- Frequently used Status Codes in Web API
Middleware and HTTP Request Pipeline
- What is Middleware and HTTP Request Pipeline
- Working with Run(), Map(), Use() and Next() method
- Demo: Run() method in Middleware
- Demo: Use() & Next() method in Middleware
- Demo: Map() method in middleware
- Create Custom Middleware in a separate file
- Verify the Next() method in built-in middleware
Controller Action Return Types
- Introduction to Controller Action Return Types
- Specific Type
- IActionResult
- ActionResult<Type>
- Custom Return Type
- Summary of Controller Action Return Types
Routing in Asp.Net Core Web API
- What is Routing in Asp.Net Core Web API
- How to Enable Routing in ASP.NET Core Web API
- Set the first Route on Controller’s Action method
- Working with Variables in Routing
- Working with Query String in Routing
- Setup multiple URLs for a single resource (Action Method)
- Same URL for multiple resources (Is this Possible?)
- Token replacement in Routing
- Set the Base Route at the Controller level
- Route Constraints: Validate the route variables
- Route Constraints: Alpha & Regular Expression (regex)
- Best practices of RESTful URLs for CRUD operations
Model Binder
- What is Model Binder?
- [BindProperty] attribute: Bind Incoming form-data to public properties
- [BindProperties] attribute
- Model binder’s default way to bind the incoming request data with parameters
- [FromQuery] attribute: Bind the query string data
- [FromRoute] attribute: Bind the route data
- [FromBody] attribute: Bind the body data
- [FromForm] attribute: Bind the from-data
- [FromHeader] attribute: Bind the header data
- Custom Model Binder in Asp.Net Core Web API
Database Modelling and Entity Framework
- Setup Entity Framework in API Project
- Introduction to Entity Framework Core
- Install Entity Framework Core in Asp.Net Core Web API application
- Setup the DbContext Class and Database Connection String
- Read connection string from appsettings.json file
- Generate SQL Server database using Entity Framework Core migrations
- Implement Data Classes and Perform Migrations
- Seed Data in Tables
Dependency Injection (DI)
- What is Dependency Injection (DI)
- Working with Services without using Dependency Injection
- Singleton service lifetime using AddSingleton<> method
- Scoped service lifetime using AddScoped<> method
- Transient service lifetime using AddTransient<> method
- TryAddSingleton, TryAddScoped and TryAddTransient methods in DI
Web API Logging and Serilog
- Introduction to Logging
- The What, Why, and How of Logging
- Setting up Serilog in Web API
- Logging to a file using Serilog
- Adding a new Log table using EFCore migrations
- Logging to an SQL Table using Serilog
- Retrieving all logs from the database
- Summary of Logging
Validations in ASP.NET Core Web API
- Introduction To Fluent Validations
- Setting Up Fluent Validations
- Implementing Fluent Validations
Scaffolding API Functionality
- Scaffolding Controllers and Actions
- Test and Understand POST Endpoint
- Test and Understand GET Endpoints
- Test and Understand PUT Endpoint
- Test and Understand DELETE Endpoint
Rest API Development Best Practices
- Refactor POST Method with Data Transfer Object
- Introduction to Automapper
- Refactor GET Methods
- Refactor PUT Method
- Implement Repository Pattern
- Refactor Controller to Use Repository
Security in API
- Setup User Identity Core
- Add Default User Roles
- Setup Auth Manager for Registration
- Setup Registration Endpoint
- Setup Login Endpoint
- Implement JWT Authentication
- Protecting Endpoints
- Implement Refresh Tokens
- Refresh Token with Login
Web API Versioning
- Setting up Versioning in .NET Web API
- Query String-Based versioning in Web API
- URL Based Versioning
- HTTP Header-Based Versioning
- HTTP Media Type-Based Versioning
Advanced Concepts
- Global Error Handling
- Implement Caching
- Implement Server-Side Sorting
- Implement Server-Side Filtering
- Implement Server-Side Paging
- Exploring OData
- Project Architectural Changes
- Repository Refactor
- Controller Refactor
- Add JWT Authentication to Swagger Doc
- Unit Testing in ASP.NET Core Web API
API Hosting and Deployment
- Create Microsoft Azure Account
- Deploy Application and Database to Microsoft Azure
Consume Web APP in Angular Application
- Setup the Angular application and install bootstrap
- Consume WEB API in the Angular application and face the CORS issue
- Fix the CORS issue in Asp.Net Core Web API and display the data in the Angular app
- Consume GET, POST, PUT, and DELETE API in the Angular Application
Note: If we missed any topics, if any new features are introduced, or if anyone wants to learn any concepts which are not in our course syllabus, that will also be included as part of this course. If you have any questions, please put a comment in the comment box.