You are previewing Developing Service-Oriented AJAX Applications on the Microsoft® Platform.
O'Reilly logo
Developing Service-Oriented AJAX Applications on the Microsoft® Platform

Book Description

Delve into the fundamental architectural principles and techniques for developing service-oriented AJAX applications for the enterprise. This guide offers a code-heavy, example-based approach to learning how to write a modern services API and an AJAX front end that can easily be extended, reused, and integrated by third parties. Focusing on Microsoft technologies and enterprise servers, including Microsoft SharePoint(r) Server 2007, ASP.NET AJAX, and Microsoft .NET Frameworks 2.0, 3.0, and 3.5, this book walks you through a client-centric UI architecture programmed against an XML service-oriented backend. Topics include the Microsoft AJAX Library, Web services and an XML API, client-side XSLT, JavaScript AJAX communication, and integration with Microsoft servers. The book does not attempt to be an exhaustive reference, but focuses instead on fundamental architectural principles and guidance.

Table of Contents

  1. Developing Service-Oriented AJAX Applications on the Microsoft® Platform
    1. SPECIAL OFFER: Upgrade this ebook with O’Reilly
    2. Foreword
    3. Acknowledgments
    4. Introduction
      1. Who This Book Is For
      2. What This Book Is About
      3. What Won’t Be Covered
      4. The Author’s Blog
      5. Companion Content
      6. Hardware and Software Requirements
      7. Find Additional Content Online
      8. Support for This Book
        1. Questions and Comments
    5. I. AJAX and WCF
      1. 1. Service-Oriented AJAX Fundamentals
        1. Service-Based AJAX: Architecture Overview
        2. The Client-Side Runtime
          1. The ASP.NET AJAX ScriptManager Control
          2. Page Life Cycle and Sys.Application
          3. Web Requests with Sys.Net.WebRequest
          4. Client-Side Rendering
        3. Introducing Windows Communications Foundation
          1. XML Endpoints with WCF
          2. Updating Data with WCF Services
        4. Summary
      2. 2. The AJAX Application Server: Service Orientation and the Windows Communication Foundation
        1. The Benefits of WCF as the AJAX Services Platform
        2. Service Orientation and Service-Based AJAX Applications
        3. WCF Fundamentals
          1. WCF Contracts
          2. WCF Endpoints
          3. WCF Bindings
          4. WCF Behaviors
        4. ASP.NET Runtime Support for WCF Services
        5. Case Study: Introducing the Knowledge Base Reference Application
          1. Contract-Based Service Programming
          2. Implementing Data Schema Through WCF Data Contracts
          3. WCF Security and Authorization with ASP.NET
        6. Web Services for AJAX Using ASP.NET 2.0 ASMX
        7. Summary
      3. 3. The AJAX Application Server: Windows Communication Foundation’s Web Programming Model
        1. WCF and the Web Programming Model
          1. Enabling the Web Programming Model
          2. Accessing the Current Web Context from WCF
          3. The REST Architectural Pattern and WCF
          4. Using WebGet for Data Retrieval
          5. Readable URLs and URI Templates
          6. Using the UriTemplate Class to Build URLs
          7. Supporting REST Service Actions with WebInvoke
            1. HTTP Header Processing with the HEAD Verb
            2. HTTP Status Codes
            3. Client-Side Caching with GET
        2. Introducing WCF Syndication Services
        3. Implementing REST Web Services Using ASP.NET 2.0 HTTP Handlers
        4. Summary
    6. II. Practical AJAX
      1. 4. The AJAX Runtime with the Microsoft AJAX Library
        1. Understanding the Client-Side Programming Model
        2. Deploying the Runtime with ASP.NET Server Controls
          1. Compiled Script Resources
          2. The Script Manager Programming Model
        3. Object-Oriented JavaScript Fundamentals
        4. The Microsoft Ajax Library JavaScript Type Extensions
          1. The JavaScript Type
          2. JavaScript Namespaces
          3. Types and Inheritance
        5. Summary
      2. 5. The Microsoft AJAX Library
        1. The Microsoft AJAX Library Client Framework
        2. JavaScript Base Type Extensions
          1. Array Extensions
            1. Boolean Extensions
            2. Date Extensions
          2. Error Extensions
            1. Creating Errors with Error.create
            2. Number Extensions
            3. Object Extensions
            4. String Extensions
            5. Sys.StringBuilder
          3. Global Types and Objects in the Sys Namespace
            1. Sys.Application
            2. Sys.Debug
              1. Diagnostics with Sys.Debug.trace
              2. Diagnostics with Sys.Debug.traceDump(object, name)
              3. Diagnostics with Sys.Debug.assert(condition, message, displayCaller)
              4. Diagnostics with
            3. Sys.Browser
          4. The Network Library in Sys.Net
          5. JavaScript Serialization with Sys.Serialization
          6. Application Services with Sys.Services
          7. Browser Extensions with Sys.UI
            1. Programming DOM Elements with Sys.UI.DomElement
              1. Sys.UI.DomElement.getElementById(id, parent)
              2. Sys.UI.DomElement.getLocation(element)
              3. Sys.UI.DomElement.setLocation(element, Sys.UI.Point)
              4. Sys.UI.DomElement.getBounds(element)
            2. Programming DOM Events with Sys.UI.DomEvent
        3. Coding to Support Visual Studio IntelliSense
        4. Summary
      3. 6. AJAX Application Services with Sys.Services
        1. ASP.NET AJAX Application Services with Sys.Services
          1. ASP.NET AJAX Script Initialization and Sys.Services
          2. JavaScript Authentication with Sys.Services
          3. JavaScript Profile Data with Sys.Services
          4. Application Roles and Sys.Services.RoleService
        2. Service-Oriented Application Services over WCF
        3. Customizing WCF Application Services
        4. Summary
    7. III. Applied AJAX
      1. 7. Building an AJAX Class Library with Components
        1. Understanding Properties and Events in the AJAX Library
          1. Properties
          2. Events
        2. Developing Components Using the AJAX Library Framework
          1. Passing Context to Event Handlers
          2. Building an Application Services Component
        3. Summary
      2. 8. Building AJAX Controls
        1. The Ajax Library Behavior Class
          1. Implementing Custom Behaviors with the AJAX Library
          2. Behavior Class Static Methods
        2. The Ajax Library Control Class
          1. Creating a Custom Control with the AJAX Library
          2. Simple Validation and the propertyChanged Event
        3. Case Study: Creating a Wiki Application Control
        4. Summary
      3. 9. AJAX and XSLT
        1. XML Rendering with XSLT
        2. XSLT Basics
        3. Creating an XSLT View
          1. XML on the Client
          2. Building an XML Control
        4. Case Study: Implementing Navigation in the Wiki Application with an Xml Control
        5. Summary
      4. 10. AJAX and Browser History
        1. The History Problem
        2. History Support in the Microsoft AJAX Library
          1. History Support with the ScriptManager Control
          2. History Support with the Client-Side Sys.Application Object
        3. Case Study: Adding History to the Wiki Application
        4. Summary
      5. 11. Extending SharePoint with Service-Oriented AJAX
        1. Introducing the SharePoint Application Platform
          1. The SharePoint Virtualized Web Application
            1. The Layouts Directory
            2. Web Service Options for SharePoint
            3. The Web Part Application
        2. Deploying Code Through Web Parts
          1. Deploying the AJAX Runtime Through the ScriptManager Control
        3. Sample Application: Creating a Site Chat
          1. Creating the Chat Protocol
        4. Summary
    8. About the Author
    9. Additional Resources for Developers from Microsoft Press
      1. Visual Basic
      2. Visual C#
      3. Web Development
      4. Data Access
      5. .NET Framework
      6. Other Developer Topics
    10. More Great Developer Resources
      1. Developer Step by Step
      2. Developer Reference
      3. Focused Topics
    11. Index
    12. SPECIAL OFFER: Upgrade this ebook with O’Reilly