WCF, WEB API and SignalR Services for .Net (WCFWEBSIG) – Outline

Detailed Course Outline

Web Services Overview

Web service architecture

  • Dividing responsibilities in n–tier distributed applications
  • Determining service and operation granularity
  • Comparing operation–, resource– and real–time–focused services

Web service support in .NET

  • The spectrum of .NET service toolkits
  • WCF
  • ASP.NET Web API services
  • SignalR real–time services

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 behaviours
  • Simplifying configuration with .NET 4.x

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 hostin

  • 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

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

Securing .NET Web Services

WCF service security

  • Selecting a secure binding
  • Comparing transport and message security
  • Authorising 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

Deploying Services

  • Building deployment packages with Visual Studio
  • Enabling Web Sockets with IIS
  • Monitoring WCF services with Windows Server AppFabric