Course Overview
TOPDeveloping 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.
Scheduled Classes
TOPWhat You'll Learn
TOPWorking 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.
Outline
TOPModule 1: Exploring ASP.NET Core MVC
Lessons
- Overview of Microsoft Web Technologies
- Overview of ASP.NET 4.x
- Introduction to ASP.NET Core MVC
- Lab : Exploring ASP.NET Core MVC
After completing this course, students will be able to:
- Understand the variety of technologies available in the Microsoft web stack.
- Describe the different programming models available for developers in ASP.NET.
- Choose between ASP.NET Core and ASP.NET 4.x.
- Describe the role of ASP.NET Core MVC in the web technologies stack, and how to use ASP.NET Core MVC to build web applications.
- Distinguish between MVC models, MVC controllers, and MVC views.
.Module 2: Designing ASP.NET Core MVC Web Applications
Lessons
- Planning in the Project Design Phase
- Designing Models, Controllers and Views
- Lab : Designing ASP.NET Core MVC Web Applications
After completing this module, students will be able to:
- Plan the overall architecture of an ASP.NET Core MVC web application and consider aspects such as state management.
- Plan the models, controllers, and views that are required to implement a given set of functional requirements.
Module 3: Configure Middlewares and Services in ASP.NET Core
Lessons
- Configuring Middlewares
- Configuring Services
- Lab : Configuring Middleware and Services in ASP.NET Core
After completing this module, students will be able to:
- Use existing middleware to set up an ASP.NET Core application.
- Create your own middleware and use it to define custom behavior.
- Understand the basic principles behind Dependency Injection, and how it is used in ASP.NET Core.
- Know how to create a custom service, configure its scope, and inject it to both middleware and ASP.NET Core MVC controllers.
Module 4: Developing Controllers
Lessons
- Writing Controllers and Actions
- Configuring Routes
- Writing Action Filters
- Lab : Developing Controllers
After completing this module, students will be able to:
- Add a controller to a web application that responds to user actions that are specified in the project design.
- Add routes to the ASP.NET Core routing engine and ensure that URLs are user-friendly in an MVC web application.
- Write code in action filters that runs before or after a controller action.
Module 5: Developing Views
Lessons
- Creating Views with Razor Syntax
- Using HTML Helpers and Tag Helpers
- Reusing Code in Views
- Lab : Developing Views
After completing this module, students will be able to:
- Create an MVC view and add Razor markup to it to display data to users.
- Use HTML helpers and tag helpers in a view.Reuse Razor markup in multiple locations throughout an application.
Module 6: Developing Models
Lessons
- Creating MVC Models
- Working with Forms
- Validate MVC Application
- Lab : Developing Models
After completing this module, students will be able to:
- Add a model to an MVC application and write code in it to implement the business logic.
- Use display and edit data annotations.
- Validate user input with data annotations.
Module 7: Using Entity Framework Core in ASP.NET Core
Lessons
- 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
After completing this module, students will be able to:
- Connect an application to a database to access and store data.
- Explain EF Core.
- Work with Entity Framework Core.
- Use EF Core to connect to a database including Microsoft SQL Server.
Module 8: Using Layouts, CSS and JavaScript in ASP.NET Core MVC
Lessons
- Using Layouts
- Using CSS and JavaScript
- Using jQuery
- Lab : Using Layouts, CSS and JavaScript in ASP.NET Core
After completing this module, students will be able to:
- Apply a consistent layout to ASP.NET Core MVC applications.
- Add JavaScript code to your web application.
- Use the jQuery library in your web application.
Module 9: Client-Side Development
Lessons
- Applying Styles
- Using Task Runners
- Responsive design
- Lab : Client-Side Development
After completing this module, students will be able to:
- Use Bootstrap, Sass and Less in a Microsoft ASP.NET Core application.
- Use task runners in an ASP.NET Core application.
- Ensure that a web application displays correctly on devices with different screen sizes.
Module 10: Testing and Troubleshooting
Lessons
- Testing MVC Applications
- Implementing an Exception Handling Strategy
- Logging MVC Applications
- Lab : Testing and troubleshooting
After completing this module, students will be able to:
- Run unit tests against the Model–View–Controller (MVC) components, such as model classes and controllers, and locate potential bugs.
- Build a Microsoft ASP.NET Core MVC application that handles exceptions smoothly and robustly.
- Run logging providers that benefit your applications and run them by using a common logging API.
Module 11: Managing Security
Lessons
- Authentication in ASP.NET Core
- Authorization in ASP.NET Core
- Defending from Attacks
- Lab : Managing Security
After completing this module, students will be able to:
- Add basic authentication to your application.
- Configure Microsoft ASP.NET Core Identity.
- Add basic authorization to your application.
- Utilize several different authorization approaches.
- Know how security exploits work and how to better defend against them.
Module 12: Performance and Communication
Lessons
- Implementing a Caching Strategy
- Managing State
- Two-way communication
- Lab : Performance and Communication
After completing this module, students will be able to:
- Implement caching in a Microsoft ASP.NET Core application.
- Use state management technologies to improve the client experience, by providing a consistent experience for the user.
- Implement two-way communication by using SignalR, allowing the server to notify the client when important events occur.
Module 13: Implementing Web APIs
Lessons
- Introducing Web APIs
- Developing a Web API
- Calling a Web API
- Lab : Implementing Web APIs
After completing this module, students will be able to:
- Create services by using ASP.NET Core Web API.
- Call a Web API from server-side code and jQuery.
Module 14: Hosting and Deployment
Lessons
- On-premise hosting and deployment
- Deployment to Microsoft Azure
- Microsoft Azure Fundamentals
- Lab : Hosting and Deployment
After completing this module, students will be able to:
- Host and Deploy an ASP.NET Core MVC application on IIS.
- Host and Deploy an ASP.NET Core MVC application on Microsoft Azure.
- Be able to utilize services offered by Microsoft Azure to improve the capabilities of your web applications.
Module 15 Accessing Remote Data
Lessons
- Accessing Data Across the Web
- Accessing Data by Using OData Connected Services
- Lab : Retrieving and Modifying Grade Data Remotely
After completing this module, you will be able to:
- Send data to and receive data from web services and other remote data sources.
- Access data by using WCF Data Services.
Module 16: Designing the User Interface for a Graphical Application
Lessons
- Using XAML to Design a User Interface
- Binding Controls to Data
- Lab : Customizing Student Photographs and Styling the Application
After completing this module, you will be able to:
- Use XAML to design a UI.
- Bind a XAML control to data.
- Apply styles to a XAML UI.
Module 17: Improving Application Performance and Responsiveness
Lessons
- Implementing Multitasking
- Performing Operations Asynchronously
- Synchronizing Concurrent Access to Data
- Lab : Improving the Responsiveness and Performance of the Application
After completing this module, you will be able to:
- Use the Task Parallel Library to implement multitasking.
- Perform long-running operations without blocking threads.
- Control how multiple threads can access resources concurrently.
Module 18: Creating Reusable Types and Assemblies
Lessons
- 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
After completing this module, you will be able to:
- Use reflection to inspect and execute assemblies.
- Create and consume custom attributes.
- Generate managed code at run time by using CodeDOM.
- Version, sign, and deploy your assemblies to the GAC.
Module 19: Encrypting and Decrypting Data
Lessons
- Implementing Symmetric Encryption
- Implementing Asymmetric Encryption
- Lab : Encrypting and Decrypting the Grades Report
Prerequisites
TOPStudents should have incoming skills equivalent to the course(s) below, or should have attended this / these as a prequisite:
- C# .Net Programming Fundamentals (with Visual Studio)
Who Should Attend
TOPThis 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.
Next Step Courses
TOPBelow are a few of the popular Related Courses we offer in this space. Please see the complete Course Catalog for additional options and titles.
- Net Secure Coding Camp | Attacking and Securing .Net Web Applications (for .Net Core 6)
Hands-on .Net Secure Coding | Hunt down vulnerabilities and improve the security of deployed .Net web applications
- Secure .Net Web Application Development Lifecycle (SDL) (.Net Core 6)
Explore Attacks and Vulnerabilities and Design and Implement the Layered Defenses to Defend Applications
- Securing ASP.Net Web Services | Web Services Security in .Net
Essential Skills for Enterprise Developers who Need to Produce Secure .Net Based Web Services