About The Course

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 students for Microsoft Certification Exam 70-486.

Course Objectives

  • Describe the core syntax and features of Visual C#
  • Create methods, handle exceptions, and describe the monitoring requirements of large-scale applications
  • Implement the basic structure and essential elements of a typical desktop application
  • Create classes, define and implement interfaces, and create and use generic collections
  • Use inheritance to create a class hierarchy and to extend a .NET Framework class
  • Read and write data by using file input/output and streams, and serialize and deserialize data in different formats
  • Create and use an entity data model for accessing a database and use LINQ to query data
  • Access and query remote data by using the types in the System.Net namespace and WCF Data Services 
  • 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

Course Outline

    1. Review of Visual C# Syntax, Creating Methods, Handling Exceptions, and Monitoring Applications, Basic types and constructs of Visual C#
      • Overview of Writing Application by Using Visual C#, Data Types, Operators, and Expressions, Visual C# Programming Language Constructs
      • Lab : Implementing Edit Functionality for the Students List
        • Implementing Insert Functionality for the Students List, Implementing Delete Functionality for the Students List, Displaying a Student’s Age
          • Creating and Invoking Methods, Creating Overloaded Methods and Using Optional and Output Parameters
            • Handling Exceptions, Monitoring Applications
              • Lab : Extending the Class Enrolment Application Functionality
                • Refactoring the Enrolment Code, Validating Student Information, Saving Changes to the Class List
                  • Implementing Structs and Enums, Organizing Data into Collections
                    • Handling Events
                      • Lab : Writing the Code for the Grades Prototype Application
                        • Adding Navigation Logic to the Grades Prototype Application, Creating Data Types to Store User and Grade Information, Displaying User and Grade Information
                      1. 2. Creating Classes and Implementing Type-safe Collections, Creating a Class Hierarchy by Using Inheritance
                        • Creating Classes, Defining and Implementing Interfaces
                        • Implementing Type-Safe Collections
                        • Lab : Adding Data Validation and Type-Safety to the Application
                        • Implementing the Teacher, Student, and Grade Structs as Classes
                        • Adding Data Validation to the Grade Class, Displaying Students in Name Order
                        • Enabling Teachers to Modify Class and Grade Data
                        • Creating Class Hierarchies, Extending .NET Framework Classes
                        • Lab : Refactoring Common Functionality into the User Class
                        • Refactoring Common Functionality into the User Class, Implementing Password Complexity by Using an Abstract Method, Creating the ClassFullException Custom Exception
                      2. 3. Reading and Writing Local Data. Accessing a Database using LINQ and Entity Framework. Accessing Remote Data
                        • Reading and Writing Files, Serializing and Deserializing Data
                        • Performing I/O by Using Streams
                        • Lab : Generating the Grades Report
                        • Serializing Data for the Grades Report as XML, Previewing the Grades Report
                        • Persisting the Serialized Grade Data to a File, Creating and Using Entity Data Models
                        • Querying Data by Using LINQ
                        • Lab : Retrieving and Modifying Grade Data
                        • Creating an Entity Data Model from The School of Fine Arts Database, Updating Student and Grade Data by Using the Entity Framework, Extending the Entity Data Model to Validate Data
                        • Accessing Data Across the Web, Accessing Data by Using OData Connected Services
                        • Lab : Retrieving and Modifying Grade Data Remotel
                      3. 4. Exploring ASP.NET MVC 5,Designing ASP.NET MVC 5 Web Applications,Developing Controllers, Developing Views, Developing Models
                        • 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
                        • Designing Models, Controllers and Views
                        • Lab : Designing ASP.NET Core MVC Web Applications
                        • Configuring Middlewares, Configuring Services
                        • Lab : Configuring Middleware and Services in ASP.NET Core
                        • Writing Controllers and Actions
                        • Configuring Routes
                        • Lab : Developing Controllers
                      4. 5. Using Entity Framework Core in ASP.NET Core, Client-Side Development
                        • 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
                        • Applying Styles, Using Task Runners
                        • Responsive design
                        • Lab : Client-Side Development
                      5. 6. Testing and Troubleshooting
                        • Testing MVC Applications
                        • Implementing an Exception Handling Strategy
                        • Logging MVC Applications
                        • Lab : Testing and troubleshooting
                      6. 7. Managing Security
                        • Authentication in ASP.NET Core
                        • Authorization in ASP.NET Core
                        • Defending from Attacks
                        • Lab : Managing Security
                      7. 8. Performance and Communication
                        • Implementing a Caching Strategy
                        • Managing State
                        • Two-way communication
                        • Lab : Performance and Communication
                      8. 9. Implementing Web APIs
                        • Introducing Web APIs
                        • Developing a Web API
                        • Calling a Web API
                        • Lab : Implementing Web APIs
                      9. 10. Hosting and Deployment
                        • On-premise hosting and deployment
                        • Deployment to Microsoft Azure
                        • Microsoft Azure Fundamentals
                        • Lab : Hosting and Deployment