Course Description
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. This course will also prepare the student for Exam 70-486.
Target Student
This course is intended for professional web developers who use Microsoft Visual Studio in an individual-based or team-based, small-sized to the 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.
Performance-Based Objectives
After completing this course, students will be able 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.
Pre-requisites
- Experience with Visual Studio 2017.
- 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.
Course Content
Module 1: Exploring ASP.NET Core MVC
Lab: Exploring ASP.NET Core MVC
Module 2: Designing ASP.NET Core MVC Web Applications
Lab: Designing ASP.NET Core MVC Web Applications
Module 3: Configure Middlewares and Services in ASP.NET Core
Lab: Configuring Middleware and Services in ASP.NET Core
Module 4: Developing Controllers
Lab: Developing Controllers
Module 5: Developing Views
Lab: Developing Views
Module 6: Developing Models
Lab: Developing Models
Module 7: Using Entity Framework Core in ASP.NET Core
Lab: Using Entity Framework Core in ASP.NET Core
Module 8: Using Layouts, CSS and JavaScript in ASP.NET Core MVC
Lab: Using Layouts, CSS, and JavaScript in ASP.NET Core
Module 9: Client-Side Development
Lab: Client-Side Development
Module 10: Testing and Troubleshooting
Lab: Testing and troubleshooting
Module 11: Managing Security
Lab: Managing Security
Module 12: Performance and Communication
Lab: Performance and Communication
Module 13: Implementing Web APIs
Lab: Implementing Web APIs
Module 14: Hosting and Deployment
Lab: Hosting and Deployment