Name of the course
Developing ASP.NET Core MVC Web Applications
Duration
Training duration: - 40 Hours
Description
The Developing ASP.NET Core MVC Web Applications course is
designed to provide developers with the knowledge and skills necessary
to develop modern web applications using ASP.NET Core MVC
architecture. Through a hands-on approach based on solutions to real-
world applications, developers learn how to create a secure, reliable
and efficient ASP.NET Core MVC web application.
This course covers topics such as creating dynamic web pages with
Razor syntax and HTML helpers, interacting with a database using
Entity Framework, implementing authentication and authorization
features, developing mobile-friendly MVC applications, deploying an
ASP.NET Core MVC application and optimizing for performance.
Additionally, students learn best practices for application deployment
and security.
Upon successful completion of this course, developers should be
prepared to create an efficient ASP.NET Core MVC application and
deploy it to a production environment. This course is suitable for
developers of all levels, but some prior programming experience is
recommended.
Objectives
The learning outcome for this course will be:-
Learn how to create ASP .NET Core web applications from the
ground up.
Gain a detailed understanding of how to use the ASP.NET Core MVC
framework.
Explore the two main types of web applications: MVC (Model-View-
Controller) and API (Application Programming Interface).
Master the skills needed to create a web API.
Understand the differences between server-side and client-side
programming.
Gain skills with Entity Framework Core such as setting up a database
connection and implementing a data model.
Learn to create a fully functional web application UI using Razor
views.
Create an API using Controllers, Actions and Action Results.
Explore the use of ASP.NET Core Identity for authentication and
authorization.
Understand the basics of deploying an application to a web server.
Prerequisites
This course is designed for developers with prior knowledge of the
following:
C# and object-oriented programming
HTML/CSS
Web security concepts
Knowledge of Entity Framework Core or other ORM (Object
Relational Mapper)
Understanding of Dependency Injection (DI) concepts
Familiarity with Microsoft Visual Studio (or Visual Studio Code)
Basic understanding of RESTful web service structure, specifically
ASP.NET Core
Familiarity with the ASP.NET Core configuration system
Understanding of authentication and authorization principles
Experience with Windows PowerShell
Working knowledge of .NET Core
Outline
Module 1: Exploring ASP.NET Core MVC
Overview of Microsoft Web Technologies
Overview of ASP.NET 4.x
Introduction to ASP.NET Core MVC
Lab : Exploring ASP.NET Core MVC
Exploring a Razor Pages Application
Exploring a Web API Application
Exploring an MVC Application
Module 2: Designing ASP.NET Core MVC Web Applications
Planning in the Project Design Phase
Designing Models, Controllers and Views
Lab : Designing ASP.NET Core MVC Web Applications
Planning Model Classes
Planning Controllers
Planning Views
Architecting and MVC Web Application
Module 3: Configure Middlewares and Services in ASP.NET Core
Configuring Middlewares
Configuring Services
Lab : Configuring Middleware and Services in ASP.NET Core
Working with Static Files
Creating custom middleware
Using dependency injection
Injecting a service to a controller
Module 4: Developing Controllers
Writing Controllers and Actions
Configuring Routes
Writing Action Filters
Lab : Developing Controllers
Adding controllers and actions to an MVC application
Configuring routes by using the routing table
Configuring routes using attributes
Adding an action filer
Module 5: Developing Views
Creating Views with Razor Syntax
Using HTML Helpers and Tag Helpers
Reusing Code in Views
Lab : Developing Views
Adding Views to an MVC Application
Adding a partial view
Adding a view component
Module 6: Developing Models
Creating MVC Models
Working with Forms
Validate MVC Application
Lab : Developing Models
Adding a model
Working with Forms
Add Validation
Module 7: Using Entity Framework Core in ASP.NET Core
Introduction to Entity Framework Core
Working with Entity Framework Core
Use Entity Framework Core to connect to Microsoft SQL Server
Lab : Using Entity Framework Core in ASP.NET Core
Adding Entity Framework Core
Use Entity Framework Core to retrieve and store data
Use Entity Framework Core to connect to Microsoft SQL Server
Module 8: Using Layouts, CSS and JavaScript in ASP.NET Core MVC
Using Layouts
Using CSS and JavaScript
Using jQuery
Lab : Using Layouts, CSS and JavaScript in ASP.NET Core
Applying a layout and link views to it
Using CSS
Using JavaScript
Using jQuery
Module 9: Client-Side Development
Applying Styles
Using Task Runners
Responsive design
Lab : Client-Side Development
Use gulp to run tasks
Styling using Sass
Using Bootstrap
Module 10: 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 MVC project
Add exception handling
Add logging
Module 11: Managing Security
Authentication in ASP.NET Core
Authorization in ASP.NET Core
Defending from Attacks
Lab : Managing Security
Use Identity
Add Authorization
Avoid the Cross-Site Request Forgery Attack
Module 12: Performance and Communication
Implementing a Caching Strategy
Managing State
Two-way communication
Lab: Implementing a Caching Strategy
Lab: Managing state
Lab: Two-Way communication
Module 13: Implementing Web APIs
Introducing Web APIs
Developing a Web API
Calling a Web API
Lab: Adding Actions and Call Them Using Microsoft Edge
Lab: Calling a Web API using server-side code
Lab: Calling a Web API using jQuery
Module 14: Hosting & Deployment
On-premise hosting and deployment
Deployment to Microsoft Azure
Microsoft Azure Fundamentals
Lab: Deploying a Web Application to Microsoft Azure
Lab: Upload an Image to Azure Blob Storage