Open menu

Official Microsoft Software Development

Audience

Primary: .NET developers who want to learn how to develop services and deploy them to hybrid environments.

Secondary: .NET developers with Web application development experience who are exploring developing new applications or porting existing applications to Microsoft Azure.

Prerequisites

Before attending this course, students must have:

  • Experience with C# programming, and concepts such as lambda expressions, LINQ, and anonymous types
  • Understanding the concepts of n-tier applications
  • Experience with querying and manipulating data with ADO.NET

Duration

5 days. Hands on.

Course Objectives

In this course, students will learn how to design and develop services that access local and remote data from various sources. Students will also learn how to develop and deploy services to hybrid environments, including on-premises servers and Microsoft Azure.

After completing this course, students will be able to:

  • Describe the basic concepts of service development and data access strategies using the .NET platform.
  • Describe the Microsoft Azure cloud platform and its compute, data, and application hosting offerings.
  • Design and develop a data-centric application using Visual Studio 2017 and Entity Framework Core.
  • Design, implement, and consume HTTP services using ASP.NET Core.
  • Extend HTTP services using ASP.NET Core.
  • Host services on-premises and in Microsoft Azure.
  • Deploy services to both on-premises and cloud environments and manage the interface and policy for their services.
  • Choose a data storage solution, cache, distribute, and synchronize data.
  • Monitor, log, and troubleshoot services.
  • Describe claim-based identity concepts and standards, and implement authentication and authorization with Azure Active Directory.
  • Create scalable service applications.

Course Content

Module 1: Overview of service and cloud technologies
Key Components of Distributed Applications
Data and Data Access Technologies
Service Technologies
Cloud Computing
Manipulating Data
Lab : Exploring the Work Environment
After completing this module, students will be able to:
• Explain services architecture and hosting environments.
• Explain cloud computing and the Microsoft Azure cloud platform.
• Explain data access strategies.

Module 2: Querying and Manipulating Data Using Entity Framework
ADO.NET Overview
Creating an Entity Data Model
Querying Data
Lab : Creating a Data Access Layer using Entity Framework
Lab : Manipulating Data
After completing this module, students will be able to:
• Describe basic objects in ADO.NET and explain how asynchronous operations work.
• Create an Entity Framework Core data model.
• Query data by using Entity Framework Core.
• Insert, delete, and update entities by using Entity Framework Core.

Module 3: Creating and Consuming ASP.NET Core Web APIs
HTTP Services
Creating an ASP.NET Core Web API
Consuming ASP.NET Core Web APIs
Handling HTTP Requests and Responses
Automatically Generating HTTP Requests and Responses
Lab : Creating an ASP.NET Core Web API
After completing this module, students will be able to:
• Design services by using the HTTP protocol.
• Create services by using ASP.NET Core Web API.
• Use the HttpRequest/IActionResult classes to control HTTP messages.
• Consume ASP.NET Web API services.

Module 4: Extending ASP.NET Core HTTP Services
The ASP.NET Core Request Pipeline
Customizing Controllers and Actions
Injecting Dependencies into Controllers
Lab : Customizing the ASP.NET Core Pipeline
After completing this module, students will be able to:
• Extend the ASP.NET Web API request and response pipeline.
• Customize Controllers and Actions.
• Inject dependencies into ASP.NET Web API controllers.

Module 5: Hosting Services On-Premises and in Azure
Hosting Services on-premises
Hosting Services in Azure App Service
Packaging Services in Containers
Implementing Serverless Services
Lab : Host an ASP.NET Core service in a Windows Service
Lab : Host an ASP.NET Core Web API in an Azure Web App
Lab : Host an ASP.NET Core service in Azure Container Instances
Lab : Implement an Azure Function
After completing this module, students will be able:
• Host services on-premises by using Windows services and Microsoft Internet Information Services (IIS).
• Host services in the Azure cloud environment by using Web Apps, Docker containers, and Azure Functions.
• Package services in containers.
• Implement serverless services.

Module 6: Deploying and Managing Services
Web Deployment with Visual Studio 2017
Continuous Delivery with Visual Studio Team Services
Deploying Applications to Staging and Production Environments
Defining Service Interfaces with Azure API Management
Lab : Deploying an ASP.NET Core web service on Linux
Lab : Deploying to Staging and Production
Lab : Publishing a Web API with Azure API Management
After completing this module, students will be able to:
• Explain Microsoft Internet Information Services (IIS) Web Deploy.
• Explain Azure Web Apps deployment by using a Microsoft Visual Studio Team Services build pipeline.
• Explain how to deploy web services to Azure Container Instances.
• Explain how to define service interfaces by using API Management and Swagger.
• Explain how to define policies by using API Management.
• Explain defining service interfaces using Azure API Management and Swagger.

Module 7: Implementing Data Storage in Azure
Choosing a Data Storage Mechanism
Accessing Data in Azure Storage
Working with Structured Data in Azure
Geographically Distributing Data with Azure CDN
Scaling with Out-of-Process Cache
Lab : Storing Files in Azure Storage
Lab : Querying Graph Data with CosmosDB
Lab : Caching out-of-process with Azure Redis cache
After completing this module, students will be able to:
• Describe the architecture of Storage.
• Control access to your Storage items.
• Cache data using Azure Cache for Redis.
• Distribute data by using Microsoft Azure Content Delivery Network.

Module 8: Diagnostics and Monitoring
Logging in ASP.NET Core
Diagnostic Tools
Application Insights
Lab : Monitoring ASP.NET Core with ETW and LTTng
Lab : Monitoring Azure Web Apps with Application Insights
After completing this module, students will be able to:
• Explain trace listeners.
• Explain performance counters.
• Explain ETW and LTTng events.
• Demonstrate using App Insights to monitor services.

Module 9: Securing services on-premises and in Microsoft Azure
Explaining Security Terminology
Securing Services with ASP.NET Core Identity
Securing Services with Azure Active Directory
Lab : Using ASP.NET Core Identity
Lab : Using Azure Active Directory with ASP.NET Core

Module 10: Scaling Services
Introduction to Scalability
Automatic Scaling
Azure Application Gateway and Traffic Manager
Lab : Load Balancing Azure Web Apps
Lab : Load Balancing with Azure Traffic Manager
After completing this module, students will be able to:
• Explain the need for scalability.
• Describe how to use load balancing for scaling services.
• Explain Azure Load Balancer, Azure Application Gateway, and Azure Traffic Manager.

Verhoef Training Ltd.

11 Kingsmead Square
Bath, BA1 2AB
United Kingdom

Tel: +44(0)1225 339705

Email: info@verhoef-training.co.uk

Become a Trainer

Ever thought about using your skills to help others?

Call us to find out about how you can teach for Verhoef.

Tel: +44(0)1225 339705