.NET Web Services: WCF, Web API, gRPC, and SignalR
.NET includes multiple web service frameworks that allow enterprise applications to gain online access to critical business data. In this .NET Web Services training course, you will program WCF, ASP.NET Web API, gRPC and SignalR web services with C# to exploit each of the frameworks and maximize these technologies. These services connect isolated data to create powerful, distributed .NET applications. .NET Web Services: WCF, Web API, gRPC, and SignalR Benefits In this course, you will: Create Windows Communication Foundation (WCF) services Develop RESTful web services with ASP.NET Web API. Update to the newest .NET Core technology with CoreWCF. Create interoperable services with protobuf technology using gRPC. Harness real-time web services with SignalR. Connect MVC, WPF, and HTML5 browser clients to .NET services. Prerequisites Experience with .NET programming in C# at the level of: Course 419, Introduction to C# Training You should know how to: Write classes containing methods and properties Design and implement programmatic interfaces Have implemented data access in .NET using Entity Framework Craft user interfaces for web or Windows applications with ASP.NET, Windows Forms, or WPF .NET Web Services Course Outline Module 1: Web Services Overview Web service support in .NET The spectrum of .NET service toolkits WCF and coreWCF ASP.NET Web API services gRPC services SignalR real-time services Module 2: Designing Operation-Oriented Services Programming WCF services Creating the service interface and implementation Applying attributes to the service and operations Implementing data contracts explicitly and implicitly Employing fault contracts to report service errors Accessing and hosting WCF services Connecting ASP.NET MVC and WPF clients to WCF Adding service references to client applications Coding clients without adding service references Hosting WCF services with IIS and Windows services Configuring WCF services Authoring service and client configuration Leveraging bindings for interoperability and performance Harnessing service and endpoint behaviors Simplifying configuration under .NET 4.x Module 3: Migrating to .NET Core 6+ Upgrading WCF Services and clients with CoreWCF Installing and launching the .NET Upgrade Assistant Creating and migrating WCF Web Services to CoreWCF Connecting .NET 6+ client apps with CoreWCF packages Module 4: Constructing Resource-Oriented Services Creating ASP.NET Web API services Programming the API controller Mapping CRUD operations to HTTP verbs GET POST PUT / PATCH / MERGE DELETE Connecting service URLs to operations with routing Web API clients and hosting Accessing Web API services from .NET, web and mobile clients Retrieving XML, JSON and Atom formatted data Hosting Web API services in IIS and custom applications Constructing OData services with Web API Returning IQueryable from controller actions Querying OData service data with $select, $filter and $orderby Exploiting Web API service features Integrating Web API services with Entity Framework Automating service documentation with help pages Validating with model binding and data annotations Module 5: Creating modern interoperable Web Services Generating a gRPC service under .NET Core 6+ Creating a gRPC project Specifying the API with protobuf file and proto3 language Generating a gRPC client from the matching protobuf file Module 6: Building Real-Time Services Architecting ASP.NET SignalR services Replacing polling with server push Establishing candidate applications for SignalR Chat Monitoring Dashboard Collaboration Coding SignalR services Developing the hub class Broadcasting to all connected clients Segmenting callbacks with groups Interacting with SignalR services from browser clients Integrating SignalR with jQuery Responding to SignalR broadcast messages Managing the connection life cycle Module 7: Securing .NET Web Services WCF service security Selecting a secure binding Comparing transport and message security Authorizing service operations with principal permissions ASP.NET Web API security Implementing individual account security with OAuth Integrating Web API with Forms authentication Enabling secure access to services with Authorize