Book description
Written by Microsoft software legend Juval Lowy, Programming WCF Services is the authoritative introduction to Microsoft's new, and some say revolutionary, unified platform for developing service-oriented applications (SOA) on Windows. Relentlessly practical, the book delivers insight, not documentation, to teach developers what they need to know to build the next generation of SOAs.
After explaining the advantages of service-orientation for application design and teaching the basics of how to develop SOAs using WCF, the book shows how you can take advantage of built-in features such as service hosting, instance management, asynchronous calls, synchronization, reliability, transaction management, disconnected queued calls and security to build best in class applications. Programming WCF Services focuses on the rationale behind particular design decisions, often shedding light on poorly-documented and little-understood aspects of SOA development. Developers and architects will learn not only the "how" of WCF programming, but also relevant design guidelines, best practices, and pitfalls. Original techniques and utilities provided by the author throughout the book go well beyond anything that can be found in conventional sources.
Based on experience and insight gained while taking part in the strategic design of WCF and working with the team that implemented it, Programming WCF Services provides experienced working professionals with the definitive work on WCF. Not only will this book make you a WCF expert, it will make you a better software engineer. It's the Rosetta Stone of WCF.
Publisher resources
Table of contents
- Programming WCF Services
- Dedication
- A Note Regarding Supplemental Files
- Foreword
- Preface
-
1. WCF Essentials
- 1.1. What Is WCF?
- 1.2. Services
- 1.3. Addresses
- 1.4. Contracts
- 1.5. Hosting
- 1.6. Bindings
- 1.7. Endpoints
- 1.8. Metadata Exchange
- 1.9. Client-Side Programming
- 1.10. Programmatic Versus Administrative Configuration
- 1.11. WCF Architecture
- 1.12. Working with Channels
- 1.13. Reliability
- 2. Service Contracts
- 3. Data Contracts
- 4. Instance Management
-
5. Operations
- 5.1. Request-Reply Operations
- 5.2. One-Way Operations
- 5.3. Callback Operations
- 5.4. Events
- 5.5. Streaming
- 6. Faults
-
7. Transactions
- 7.1. The Recovery Challenge
- 7.2. Transactions
- 7.3. Transaction Propagation
- 7.4. Transaction Protocols and Managers
- 7.5. The Transaction Class
- 7.6. Transactional Service Programming
- 7.7. Explicit Transaction Programming
- 7.8. Service State Management
-
7.9. Instance Management and Transactions
- 7.9.1. Per-Call Transactional Service
-
7.9.2. Per-Session Transactional Service
- 7.9.2.1. Releasing service instance
- 7.9.2.2. Disabling releasing the service instance
- 7.9.2.3. State-aware per-session service
- 7.9.2.4. Stateful per-session service
- 7.9.2.5. Transaction life cycle
- 7.9.2.6. Concurrent transactions
- 7.9.2.7. Completing on session end
- 7.9.2.8. Transactional affinity
- 7.9.2.9. Hybrid state management
- 7.9.2.10. Choosing per-session transactional service
- 7.9.3. Transactional Singleton
- 7.9.4. Instancing Modes and Transactions
- 7.10. Callbacks
-
8. Concurrency Management
- 8.1. Instance Management and Concurrency
- 8.2. Service Concurrency Mode
- 8.3. Instances and Concurrent Access
- 8.4. Resources and Services
- 8.5. Resource Synchronization Context
- 8.6. Service Synchronization Context
- 8.7. Custom Service Synchronization Context
- 8.8. Callbacks and Client Safety
- 8.9. Callbacks and Synchronization Context
-
8.10. Asynchronous Calls
- 8.10.1. Requirements for an Asynchronous Mechanism
- 8.10.2. Proxy-Based Asynchronous Calls
- 8.10.3. Asynchronous Invocation
- 8.10.4. Polling or Waiting for Completion
- 8.10.5. Completion Callbacks
- 8.10.6. One-Way Asynchronous Operations
- 8.10.7. Asynchronous Error Handling
- 8.10.8. Cleaning Up After End<Operation>
- 8.10.9. Asynchronous Calls and Transactions
- 8.10.10. Synchronous Versus Asynchronous Calls
-
9. Queued Services
- 9.1. Disconnected Services and Clients
- 9.2. Queued Calls
- 9.3. Transactions
- 9.4. Instance Management
- 9.5. Concurrency Management
- 9.6. Delivery Failures
- 9.7. Playback Failures
- 9.8. Queued Versus Connected Calls
- 9.9. Response Service
- 9.10. HTTP Bridge
-
10. Security
- 10.1. Authentication
- 10.2. Authorization
- 10.3. Transfer Security
- 10.4. Identity Management
- 10.5. Overall Policy
- 10.6. Scenario-Driven Approach
- 10.7. Intranet Application
- 10.8. Internet Application
- 10.9. Business-to-Business Application
- 10.10. Anonymous Application
- 10.11. No Security
- 10.12. Scenarios Summary
- 10.13. Declarative Security Framework
- 10.14. Security Auditing
- A. Introduction to Service-Orientation
- B. Publish-Subscribe Service
- C. WCF Coding Standard
- About the Author
- Colophon
- Copyright
Product information
- Title: Programming WCF Services
- Author(s):
- Release date: February 2007
- Publisher(s): O'Reilly Media, Inc.
- ISBN: 9780596526993
You might also like
book
Programming WCF Services, 2nd Edition
Programming WCF Services is the authoritative, bestselling introduction to Microsoft's unified platform for developing service-oriented applications …
book
Programming WCF Services, 3rd Edition
Programming WCF Services is the authoritative, bestselling guide to Microsoft's unified platform for developing modern service-oriented …
book
Programming WCF Services, 4th Edition
Programming WCF Services is the authoritative, bestselling guide to Microsoft’s unified platform for developing modern, service-oriented …
book
Learning WCF
This easy-to-use introduction to Microsoft Windows Communication Foundation (WCF) is ideal for developers who want to …