TT20486 - C# Intermediate - Developing ASP.Net Core MVC Web Applications

Developing ASP.Net Core MVC Web Applications is an intensive, hands-on training course, essential for experienced developers seeking instruction in creating web applications in C# & .Net Core. This skills-focused course aligns with Microsoft's 20486.

In this 5-day course, the professional web developers will learn to develop advanced ASP.NET Core MVC applications using .NET Core tools and technologies. The focus will be on coding activities that enhance the performance and scalability of the Web site application. Working in a dynamic, intensive coding environment students will learn to:

Describe the Microsoft Web Technologies stack and select an appropriate technology to use to develop any given application.
Design the architecture and implementation of a web application that will meet a set of functional requirements, user interface requirements, and address business models.
Configure the pipeline of ASP.NET Core web applications using middleware, and leverage dependency injection across MVC application.
Add Controllers to an MVC Application to manage user interaction, update models, and select and return Views.
Develop a web application that uses the ASP.NET Core routing engine to present friendly URLs and a logical navigation hierarchy to users.
Create Views in an MVC application that display and edit data and interact with Models and Controllers.
Create MVC Models and write code that implements business logic within Model methods, properties, and events.
Connect an ASP.NET Core application to a database using Entity Framework Core.
Implement a consistent look and feel across an entire MVC web application.
Write JavaScript code that runs on the client-side and utilizes the jQuery script library to optimize the responsiveness of an MVC web application.
Add client side packages and configure Task Runners.
Run unit tests and debugging tools against a web application in Visual Studio 2017.
Write an MVC application that authenticates and authorizes users to access content securely using Identity.
Build an MVC application that resists malicious attacks.
Use caching to accelerate responses to user requests.
Use SignalR to enable two-way communication between client and server.
Describe what a Web API is and why developers might add a Web API to an application.
Describe how to package and deploy an ASP.NET Core MVC web application from a development computer to a web server.

Student Testimonials

Instructor did a great job, from experience this subject can be a bit dry to teach but he was able to keep it very engaging and made it much easier to focus. Student
Excellent presentation skills, subject matter knowledge, and command of the environment. Student
Instructor was outstanding. Knowledgeable, presented well, and class timing was perfect. Student

Click here to print this page »

Prerequisites


This course is intended for professional web developers who use Microsoft Visual Studio in an individual-based or team-based, small-sized to large development environment. Candidates for this course are interested in developing advanced web applications and want to manage the rendered HTML comprehensively. They want to create websites that separate the user interface, data access, and application logic.
Experience with Visual Studio 2019 (or later).
Experience with C# programming, and concepts such as Lambda expressions, LINQ, and anonymous types.
Experience in using the .NET Framework.
Experience with HTML, CSS and JavaScript.
Experience with querying and manipulating data with ADO.NET.
Knowledge of XML and JSON data structures.

Detailed Class Syllabus


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

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

Module 3: Configure Middlewares and Services in ASP.NET Core


Configuring Middlewares
Configuring Services
Lab : Configuring Middleware and Services in ASP.NET Core

Module 4: Developing Controllers


Writing Controllers and Actions
Configuring Routes
Writing Action Filters
Lab : Developing Controllers

Module 5: Developing Views


Creating Views with Razor Syntax
Using HTML Helpers and Tag Helpers
Reusing Code in Views
Lab : Developing Views

Module 6: Developing Models


Creating MVC Models
Working with Forms
Validate MVC Application
Lab : Developing Models

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

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

Module 9: Client-Side Development


Applying Styles
Using Task Runners
Responsive design
Lab : Client-Side Development

Module 10: Testing and Troubleshooting


Testing MVC Applications
Implementing an Exception Handling Strategy
Logging MVC Applications
Lab : Testing and troubleshooting

Module 11: Managing Security


Authentication in ASP.NET Core
Authorization in ASP.NET Core
Defending from Attacks
Lab : Managing Security

Module 12: Performance and Communication


Implementing a Caching Strategy
Managing State
Two-way communication
Lab : Performance and Communication

Module 13: Implementing Web APIs


Introducing Web APIs
Developing a Web API
Calling a Web API
Lab : Implementing Web APIs

Module 14: Hosting and Deployment


On-premise hosting and deployment
Deployment to Microsoft Azure
Microsoft Azure Fundamentals
Lab : Hosting and Deployment

Module 15 Accessing Remote Data


Accessing Data Across the Web
Accessing Data by Using OData Connected Services
Lab : Retrieving and Modifying Grade Data Remotely

Module 16: Designing the User Interface for a Graphical Application


Using XAML to Design a User Interface
Binding Controls to Data

Module 17: Improving Application Performance and Responsiveness


Implementing Multitasking
Performing Operations Asynchronously
Synchronizing Concurrent Access to Data
Lab : Improving the Responsiveness and Performance of the Application

Module 18: Creating Reusable Types and Assemblies


Examining Object Metadata
Creating and Using Custom Attributes
Generating Managed Code
Versioning, Signing, and Deploying Assemblies
Lab : Specifying the Data to Include in the Grades Report

Module 19: Encrypting and Decrypting Data


Implementing Symmetric Encryption
Implementing Asymmetric Encryption
Lab : Encrypting and Decrypting the Grades Report