WCF How To’s Index
This is index of available How-To’s for Windows Communication Foundation (WCF) distilled from the WCF Documentation available on MSDN. Topics covered:
- Getting Started
- Designing Service Contracts
- Defining and Specifying Faults
- Using Sessions
- Synchronous and Asynchronous Operations
- Implementing Service Contracts
- Using Bindings to Configure Services and Clients
- Windows Communication Foundation Endpoints
- Publishing Metadata Endpoints
- Securing WCF Services
- Hosting WCF Services
- Accessing Services Using WCF Client
- Miscellaneous
- Queues in WCF
- Transactions
- Working With Certificates
- Authentication
- Authorization
- Federation and Issued Tokens
- Auditing
- Metadata
- Interoperability
- Syndication
- WCF and AJAX
- WCF Discovery
- WCF Routing
- WCF Extensibility
Detailed list of How-To’s is below.
Getting Started
- How to: Define a Windows Communication Foundation Service Contract
- How to: Implement a Windows Communication Foundation Service Contract
- How to: Host and Run a Basic Windows Communication Foundation Service
- How to: Create a Windows Communication Foundation Client
- How to: Configure a Basic Windows Communication Foundation Client
- How to: Use a Windows Communication Foundation Client
Designing Service Contracts
- How to: Create a Request-Reply Contract
- How to: Create a Basic Data Contract for a Class or Structure
- How to: Create a One-Way Contract
- How to: Create a Duplex Contract
- How to: Access Services with a Duplex Contract
- How to: Enable Streaming
Defining and Specifying Faults
Using Sessions
- How to: Create a Service That Requires Sessions
- How to: Exchange Messages Within a Reliable Session
- How to: Secure Messages within Reliable Sessions
- How to: Create a Custom Reliable Session Binding with HTTPS
- How to: Create a Secure Session
- How to: Create a Security Context Token for a Secure Session
Synchronous and Asynchronous Operations
- How to: Call WCF Service Operations Asynchronously
- How to: Call Operations Asynchronously Using a Channel Factory
- How to: Implement an Asynchronous Service Operation
Implementing Service Contracts
- How to: Create a Windows Communication Foundation Contract with a Class
- How to: Create a Service with a Contract Interface
Using Bindings to Configure Services and Clients
- How to: Specify a Service Binding in Configuration
- How to: Specify a Service Binding in Code
- How to: Specify a Client Binding in Configuration
- How to: Specify a Client Binding in Code
- How to: Customize a System-Provided Binding
Windows Communication Foundation Endpoints
Publishing Metadata Endpoints
- How to: Publish Metadata for a Service Using a Configuration File
- How to: Publish Metadata for a Service Using Code
Securing WCF Services
- How to: Set the ProtectionLevel Property
- How to: Secure a Service with Windows Credentials
- How to: Set the Security Mode
- How to: Specify the Client Credential Type
- How to: Restrict Access with the PrincipalPermissionAttribute Class
- How to: Impersonate a Client on a Service
- How to: Examine the Security Context
- How to: Specify Client Credential Values
- How to: Create a Custom Binding Using the SecurityBindingElement
- How to: Create a SecurityBindingElement for a Specified Authentication Mode
- How to: Disable Secure Sessions on a WSFederationHttpBinding
- How to: Enable Message Replay Detection
- How to: Create a Supporting Credential
- How to: Set Up a Signature Confirmation
- How to: Set a Max Clock Skew
- How to: Disable Encryption of Digital Signatures
- How to: Authenticate with a User Name and Password
- How to: Configure a Port with an SSL Certificate
- How to: Secure a Service with Windows Credentials
- How to: Secure a Service with an X.509 Certificate
- How to: Use Transport Security and Message Credentials
- How to: Create a Custom Client Identity Verifier
- How to: Use Separate X.509 Certificates for Signing and Encryption
- How to: Change the Cryptographic Provider for an X.509 Certificate's Private Key
Hosting WCF Services
- How to: Host a WCF Service in IIS
- How to: Host a WCF Service in WAS
- How to: Host a WCF Service in a Managed Windows Service
- How to: Host a WCF Service in a Managed Application
- How to: Host a WCF Service Written with .NET Framework 3.5 in IIS Running Under .NET Framework 4
- How to: Host a non-service workflow in IIS
- How to: Host a Workflow Service with Windows Server App Fabric
- How to: Configure Persistence with WorkflowServiceHost
- How to: Configure Tracking with WorkflowServiceHost
- How to: Configure Idle Behavior with WorkflowServiceHost
- How to: Configure Workflow Unhandled Exception Behavior with WorkflowServiceHost
Accessing Services Using WCF Client
- How to: Create a Windows Communication Foundation Client
- How to: Access Services with a Duplex Contract
- How to: Call WCF Service Operations Asynchronously
- How to: Access WCF Services with One-Way and Request-Reply Contracts
- How to: Access a WSE 3.0 Service with a WCF Client
- How to: Improve the Startup Time of WCF Client Applications using the XmlSerializer
Miscellaneous
- How to: Use Svcutil.exe to Validate Compiled Service Code
- How to: Control Service Instancing
- How to: Replace the WCF URL Reservation with a Restricted Reservation
- How to: Configure a Windows Communication Foundation Service to Use Port Sharing
- How to: Enable the Net.TCP Port Sharing Service
- How to: Create a Service That Returns Arbitrary Data Using The WCF Web HTTP Programming Model
- How to: Create a Service That Accepts Arbitrary Data using the WCF REST Programming Model
Queues in WCF
- How to: Exchange Queued Messages with WCF Endpoints
- How to: Exchange Messages with WCF Endpoints and Message Queuing Applications
Transactions
Working With Certificates
- How to: Obtain a Certificate
- How to: View Certificates with the MMC Snap-in
- How to: Retrieve the Thumbprint of a Certificate
- How to: Make X.509 Certificates Accessible to WCF
- How to: Create Temporary Certificates for Use During Development
- How to: Specify the Certificate Authority Certificate Chain Used to Verify Signatures
- How to: Consistently Reference X.509 Certificates
Authentication
- How to: Use the ASP.NET Membership Provider
- How to: Use a Custom User Name and Password Validator
- How to: Use Multiple Security Tokens of the Same Type
- How to: Impersonate a Client on a Service
Authorization
- How to: Restrict Access with the PrincipalPermissionAttribute Class
- How to: Use the ASP.NET Role Provider with a Service
- How to: Use the ASP.NET Authorization Manager Role Provider with a Service
Federation and Issued Tokens
- How to: Create a Federated Client
- How to: Configure Credentials on a Federation Service
- How to: Create a WSFederationHttpBinding
- How to: Create a Security Token Service
- How to: Configure a Local Issuer
- How to: Disable Secure Sessions on a WSFederationHttpBinding
- How to: Create a Duplex Federated Binding
Auditing
Metadata
- How to: Import Metadata into Service Endpoints
- How to: Export Metadata from Service Endpoints
- How to: Use Svcutil.exe to Export Metadata from Compiled Service Code
- How to: Publish Metadata for a Service Using a Configuration File
- How to: Publish Metadata for a Service Using Code
- How to: Use Svcutil.exe to Download Metadata Documents
- How to: Use MetadataResolver to Obtain Binding Metadata Dynamically
- How to: Use MetadataExchangeClient to Retrieve Metadata
- How to: Retrieve Metadata and Implement a Compliant Service
- How to: Secure Metadata Endpoints
- How To: Allow Metadata Requests While Authorizing
- How to: Export Custom WSDL
- How to: Export Custom Policy Assertions
- How to: Import Custom WSDL
- How to: Import Custom Policy Assertions
- How to: Write an Extension for the ServiceContractGenerator
- How to: Configure a Custom WS-Metadata Exchange Binding
- How to: Retrieve Metadata Over a non-MEX Binding
Interoperability
- How to: Use the COM+ Service Model Configuration Tool
- How to: Configure COM+ Service Settings
- How to: Deploy a COM+ Integration Application
- How to: Register and Configure a Service Moniker
- How to: Use the Windows Communication Foundation Service Moniker without Registration
- How to: Use a Service Moniker with WSDL Contracts
- How to: Use a Service Moniker with Metadata Exchange Contracts
- How to: Specify Channel Security Credentials
- How to: Configure WCF Services to Interoperate with WSE 3.0 Clients
- How to: Configure a WCF Client to interoperate with WSE3.0 Services
- How to: Configure WCF Service to Interoperate with ASP.NET Web Service Clients
- How to: Retrieve Metadata and Implement a Compliant Service
- How to: Migrate ASP.NET Web Service Code to the Windows Communication Foundation
- How to: Migrate ASP.NET Web Service Client Code to the Windows Communication Foundation
Syndication
- How the WCF Syndication Object Model Maps to Atom and RSS
- How to: Create a Basic RSS Feed
- How to: Create a Basic Atom Feed
- How to: Expose a Feed as Both Atom and RSS
WCF and AJAX
- How to: Create and Access an AJAX-Enabled WCF Service
- How to: Add an ASP.NET AJAX Endpoint Without Using Configuration
- How to: Use Configuration to Add an ASP.NET AJAX Endpoint
- How to: Choose between HTTP POST and HTTP GET requests for ASP.NET AJAX Endpoints
- How to: Migrate AJAX-Enabled ASP.NET Web Services to WCF
WCF Discovery
- How to: Programmatically Add Discoverability to a WCF Service and Client
- How to: Implement a Discovery Proxy
- How to: Implement a Discoverable Service that Registers with the Discovery Proxy
- How to: Implement a Client Application that Uses the Discovery Proxy to Find a Service
- How to: Test the Discovery Proxy
- How to:Determine the Discovery Version of a Probe Request
WCF Routing
- How To: Service Versioning
- How To: Service Data Partitioning
- How To: Dynamic Update
- How To: Error Handling