You are previewing Professional SharePoint® 2010 Development.
O'Reilly logo
Professional SharePoint® 2010 Development

Book Description

Learn to leverage the features of the newest version of SharePoint, in this update to the bestseller

More than simply a portal, SharePoint is Microsoft's popular content management solution for building intranets and Web sites or hosting wikis and blogs. Offering broad coverage on all aspects of development for the SharePoint platform, this comprehensive book shows you exactly what SharePoint does, how to build solutions, and what features are accessible within SharePoint.

Written by one of the most recognized names in SharePoint development, Professional SharePoint 2010 Development offers an extensive selection of field-tested best practices that shows you how to leverage the vast power of this multi-faceted tool to build custom workflow and content management applications. Plus, you'll discover how to take advantage of the new features to roll out new SharePoint sites or upgrade existing sites.

  • SharePoint guru Tom Rizzo offers broad coverage of the newest version of SharePoint, Microsoft's popular content management solution

  • Addresses how the new version adds enhanced developer support for ASP.NET, Ajax, LINQ, and Silverlight

  • Demonstrates how to take advantage of new features, including improvements to offline and mobile client capabilities, social networking additions, and more

  • Covers user experience development, platform services, social media features, event handling, the business data catalog, forms and workflow, business intelligence, and more

With this book, you'll get exhaustive coverage on the many possibilities that exist with SharePoint.

Table of Contents

  1. Copyright
  2. ABOUT THE AUTHORS
  3. ABOUT THE TECHNICAL EDITORS
  4. CREDITS
  5. ACKNOWLEDGMENTS
  6. INTRODUCTION
    1. WHAT THIS BOOK COVERS
      1. Introductory Chapters
      2. Platform Services
      3. Workload Chapters
      4. Online Services
    2. HOW THIS BOOK IS STRUCTURED
    3. WHAT YOU NEED TO USE THIS BOOK
    4. CONVENTIONS
    5. SOURCE CODE
    6. ERRATA
    7. P2P.WROX.COM
  7. 1. Introduction to SharePoint 2010
    1. 1.1. WHAT'S NEW IN THE SHAREPOINT PLATFORM AND TOOLS
      1. 1.1.1. Language Integrated Query (LINQ)
      2. 1.1.2. List Enhancements
      3. 1.1.3. Business Connectivity Services
      4. 1.1.4. Silverlight Integration
      5. 1.1.5. Client-Side OM
      6. 1.1.6. Web 2.0 Protocols and New Standards
      7. 1.1.7. Sandbox Solutions and Resource Governors
      8. 1.1.8. SharePoint Designer
      9. 1.1.9. Visio and Access Services
      10. 1.1.10. InfoPath (Forms, List Forms, Mobile Forms)
      11. 1.1.11. Visual Studio
      12. 1.1.12. Web Solution Packages
      13. 1.1.13. Developer Dashboard
    2. 1.2. WHAT'S NEW IN COLLABORATION/SOCIAL COMPUTING
      1. 1.2.1. Enhanced Blogs and Wikis
      2. 1.2.2. Social Tagging and Ratings
      3. 1.2.3. Activity Feeds
      4. 1.2.4. Social Bookmarking
      5. 1.2.5. Organization Browser
      6. 1.2.6. Outlook Social Newsfeeds and Expertise
      7. 1.2.7. Microblogging and Mobile Client
      8. 1.2.8. Social Search
    3. 1.3. WHAT'S NEW IN SEARCH
      1. 1.3.1. New Core Search Query Capabilities
      2. 1.3.2. Enhanced Core Search Results
      3. 1.3.3. Enhanced People Search: Phonetics
      4. 1.3.4. Enhanced People Search: Address Book Style Lookups
      5. 1.3.5. Enhanced People Search Results
      6. 1.3.6. New Search Connector Framework
      7. 1.3.7. FAST Integration
    4. 1.4. WHAT'S NEW IN ECM
      1. 1.4.1. What's New in ECM: Document Management
        1. 1.4.1.1. Metadata Management and Navigation
        2. 1.4.1.2. Location-Based Metadata
        3. 1.4.1.3. Document Routing
        4. 1.4.1.4. Unique Document IDs
        5. 1.4.1.5. Taxonomy Services
        6. 1.4.1.6. Document Sets
        7. 1.4.1.7. Word Services
        8. 1.4.1.8. CMIS Support
      2. 1.4.2. What's New in ECM: Records Management
        1. 1.4.2.1. Multi-Stage Disposition
        2. 1.4.2.2. In-Place Records Management
      3. 1.4.3. What's New in ECM: Web Content Management
        1. 1.4.3.1. Standards and Browser Support
        2. 1.4.3.2. One-Click Page Layout
        3. 1.4.3.3. Enhanced Page Libraries
        4. 1.4.3.4. Social Computing Crossover Features
      4. 1.4.4. What's New in ECM: Digital Asset Management
        1. 1.4.4.1. Digital Asset Content Types
        2. 1.4.4.2. Bit Rate Throttling with IIS
        3. 1.4.4.3. Content Rating
        4. 1.4.4.4. Remote BLOB Storage
        5. 1.4.4.5. Image Property Promotion
        6. 1.4.4.6. Silverlight Web Part and Media Player
      5. 1.4.5. What's New in ECM: Workflow
        1. 1.4.5.1. OOB Modifiable Workflows
        2. 1.4.5.2. Site Workflows
        3. 1.4.5.3. Visio Services
        4. 1.4.5.4. Forms Support in SharePoint Designer
      6. 1.4.6. What's New in Forms
        1. 1.4.6.1. Replacing Default Forms with InfoPath Forms
      7. 1.4.7. What's New in Groove (SharePoint Workspace)
    5. 1.5. SUMMARY
  8. 2. Developer Tools For Sharepoint 2010
    1. 2.1. OOB DEVELOPER EXPERIENCE
    2. 2.2. SHAREPOINT DESIGNER
      1. 2.2.1. New User Interface
      2. 2.2.2. Top Ten New Features in SPD
        1. 2.2.2.1. Improved Workflow Design
        2. 2.2.2.2. New Workflow Actions
        3. 2.2.2.3. Reusable Workflows
        4. 2.2.2.4. Site Workflows
        5. 2.2.2.5. InfoPath Integration
        6. 2.2.2.6. Integration with Visio
        7. 2.2.2.7. Task Process Designer
        8. 2.2.2.8. Editable OOB Workflows
        9. 2.2.2.9. BCS Integration
        10. 2.2.2.10. Browser to SPD
        11. 2.2.2.11. WSP Integration
        12. 2.2.2.12. Locking Down SPD
    3. 2.3. VISUAL STUDIO 2010
      1. 2.3.1. Importing WSPs
      2. 2.3.2. SharePoint Server Explorer
      3. 2.3.3. Solution Explorer Integration
      4. 2.3.4. Feature Designer
      5. 2.3.5. Package Designer and Packaging Explorer
      6. 2.3.6. Project Type Templates
      7. 2.3.7. Mapping Folders
    4. 2.4. SETTING UP YOUR DEVELOPMENT ENVIRONMENT
      1. 2.4.1. System Requirements
        1. 2.4.1.1. Operating System Requirements
        2. 2.4.1.2. Virtual or Physical?
        3. 2.4.1.3. SQL Server Version
        4. 2.4.1.4. .NET Framework Support
    5. 2.5. TROUBLESHOOTING WITH DEBUGGING, AND TESTING
      1. 2.5.1. F5 Debugging
      2. 2.5.2. Debugging Using the Dev Dashboard
        1. 2.5.2.1. Turning On the Developer Dashboard
        2. 2.5.2.2. Why Use the OnDemand Setting?
        3. 2.5.2.3. Customizing the Developer Dashboard
        4. 2.5.2.4. Monitoring Your Own Code with the Dashboard
      3. 2.5.3. Debugging Using SharePoint Logs
      4. 2.5.4. Debugging Silverlight Code
      5. 2.5.5. Unit, Capacity, and Load Testing
        1. 2.5.5.1. Visual Studio 2010 Test Tools
        2. 2.5.5.2. Load Testing Kit
        3. 2.5.5.3. Best Practices for Capacity and Load Testing
      6. 2.5.6. Other Useful Tools for Debugging and Testing
        1. 2.5.6.1. SPDisposeCheck
        2. 2.5.6.2. Internet Explorer 8 Developer Tools
        3. 2.5.6.3. FireFox and Firebug
        4. 2.5.6.4. Visual Round Trip Analyzer
        5. 2.5.6.5. Fiddler
    6. 2.6. DEPLOYING AND MAINTAINING YOUR CODE
      1. 2.6.1. Customizing Deployment in VS
      2. 2.6.2. ALM with VS 2010 and SharePoint
      3. 2.6.3. Moving from Test to Production
    7. 2.7. UPGRADING CODE FROM 2007
    8. 2.8. SUMMARY
  9. 3. It Pro Enhancements For The Developer
    1. 3.1. PERFORMANCE IMPROVEMENTS
      1. 3.1.1. List Throttling
        1. 3.1.1.1. Working with the Throttle Programmatically
      2. 3.1.2. External List Throttling
      3. 3.1.3. HTTP Request Throttling
      4. 3.1.4. Remote Blob Storage
      5. 3.1.5. Streaming Media and Bit Rate Throttling
    2. 3.2. HIGH AVAILABILITY IMPROVEMENTS
      1. 3.2.1. Database Mirroring and Clustering
      2. 3.2.2. Read-Only Databases
    3. 3.3. SECURITY IMPROVEMENTS
      1. 3.3.1. Claims-Based Authentication
        1. 3.3.1.1. What Is the Value of Claims?
        2. 3.3.1.2. When to Use Claims
        3. 3.3.1.3. Claims-Based Authentication Simplifies Your Authentication Code
        4. 3.3.1.4. How Does Claims-Based Authentication Work?
        5. 3.3.1.5. SharePoint Claims
      2. 3.3.2. Code Access Security
      3. 3.3.3. Sandbox Solutions
      4. 3.3.4. Cross-Site Scripting
    4. 3.4. MANAGEMENT IMPROVEMENTS
      1. 3.4.1. Health Monitoring and Reports
      2. 3.4.2. Service Applications
      3. 3.4.3. PowerShell Support
        1. 3.4.3.1. PowerShell Tools
        2. 3.4.3.2. PowerShell Basics
    5. 3.5. SUMMARY
  10. 4. SharePoint Platform
    1. 4.1. PLATFORM OVERVIEW
    2. 4.2. NEW USER INTERFACE
      1. 4.2.1. General Platform Improvements
      2. 4.2.2. Master Pages and _Layouts
      3. 4.2.3. The Ribbon
        1. 4.2.3.1. Ribbon Extensibility
        2. 4.2.3.2. XML-Only Operations
          1. 4.2.3.2.1. Replacing Existing Controls
          2. 4.2.3.2.2. Using URL Actions
          3. 4.2.3.2.3. Why Doesn't My Button Show Up?
          4. 4.2.3.2.4. Rights and Site Administrators
          5. 4.2.3.2.5. Hiding Existing Controls
          6. 4.2.3.2.6. Writing Code to Control Menu Commands
          7. 4.2.3.2.7. Creating New Tabs and Groups
          8. 4.2.3.2.8. ToolTips and Help
          9. 4.2.3.2.9. Writing a Page Component
          10. 4.2.3.2.10. Adding Buttons with SPD
          11. 4.2.3.2.11. Contextual Tabs and Groups with Web Parts
      4. 4.2.4. Status Bar and Notification Area
        1. 4.2.4.1. Customizing the Status Bar
        2. 4.2.4.2. Customizing the Notification Area
      5. 4.2.5. Working with Dialogs
        1. 4.2.5.1. Programming the Dialog Framework
      6. 4.2.6. Theming Infrastructure
        1. 4.2.6.1. Programming Using the Theme API
    3. 4.3. LIST, VIEW, AND EVENT ENHANCEMENTS
      1. 4.3.1. List Enhancements
        1. 4.3.1.1. SharePoint Designer and Visual Studio Support
        2. 4.3.1.2. List Relationships with Cascade or Block
        3. 4.3.1.3. Validation with Excel-Like Formulas
        4. 4.3.1.4. Ensuring Uniqueness
        5. 4.3.1.5. List Joins
        6. 4.3.1.6. Customize Default Forms Using Web Parts or InfoPath
      2. 4.3.2. View Enhancements
    4. 4.4. EVENTS ENHANCEMENTS
      1. 4.4.1. New Events
      2. 4.4.2. New Event Registration Feature
      3. 4.4.3. Post-Synchronous Events
      4. 4.4.4. Custom Error Pages
      5. 4.4.5. Impersonation Enhancements
    5. 4.5. OVERVIEW OF DATA TECHNOLOGIES
      1. 4.5.1. SharePoint LINQ Support
        1. 4.5.1.1. Getting Started with SharePoint LINQ: SPMetal
        2. 4.5.1.2. What about Default Fields?
        3. 4.5.1.3. Adding References in VS
        4. 4.5.1.4. Working with DataContext Object
        5. 4.5.1.5. Typed Data Classes and Relationships
        6. 4.5.1.6. Querying Data, Enumerating, and Inefficient Queries
        7. 4.5.1.7. Adding, Updating, and Deleting Data and Dealing with Conflicts
        8. 4.5.1.8. Inspecting the CAML Query
        9. 4.5.1.9. Best Practice: Turning off Object Change Tracking
        10. 4.5.1.10. When to Use CAML and LINQ
      2. 4.5.2. Managed Client OM
        1. 4.5.2.1. Which DLLs Implement the Client OM
        2. 4.5.2.2. Adding References Inside VS
        3. 4.5.2.3. Authentication
        4. 4.5.2.4. ClientContext Object
        5. 4.5.2.5. Retrieving Items from SharePoint
        6. 4.5.2.6. Properties Returned and Requesting Properties
        7. 4.5.2.7. Load vs. LoadQuery
        8. 4.5.2.8. Nesting Includes in your LoadQuery
        9. 4.5.2.9. Using CAML to Query Lists
        10. 4.5.2.10. Using LINQ with Queries
        11. 4.5.2.11. Creating Lists, Fields, and Items
        12. 4.5.2.12. Deleting Lists and Items
        13. 4.5.2.13. Working with Users and Groups
        14. 4.5.2.14. Working Asynchronously
        15. 4.5.2.15. Working with ECMAScript
        16. 4.5.2.16. Working in Silverlight
        17. 4.5.2.17. Programming Using REST
          1. 4.5.2.17.1. Using REST in Visual Studio
          2. 4.5.2.17.2. External List Support and REST
          3. 4.5.2.17.3. JQuery and SharePoint
    6. 4.6. SANDBOX SOLUTIONS
      1. 4.6.1. Types of Solutions You Can Build
      2. 4.6.2. Executing Code in the Sandbox
        1. 4.6.2.1. Subset Object Model
        2. 4.6.2.2. What about Accessing External Data?
        3. 4.6.2.3. What about Iframes?
        4. 4.6.2.4. Code Access Security (CAS)
        5. 4.6.2.5. API Block List
        6. 4.6.2.6. Visual Studio Support
      3. 4.6.3. Solution Monitoring
        1. 4.6.3.1. What Is Monitored?
      4. 4.6.4. Managing Solutions
        1. 4.6.4.1. Solution Validation
        2. 4.6.4.2. Full-Trust Proxy
    7. 4.7. SUMMARY
  11. 5. Collaboration and Social Computing
    1. 5.1. PEOPLE-CENTRICITY
      1. 5.1.1. User Profile Service Application
        1. 5.1.1.1. Use PowerShell to Automate Creating a UPA in Your Development Environments
      2. 5.1.2. Profile Synchronization
        1. 5.1.2.1. User Subtypes
          1. 5.1.2.1.1. User Profile Customization and Code
    2. 5.2. SOCIAL NETWORKING AND MY SITE
      1. 5.2.1. Social Tagging and Ratings
        1. 5.2.1.1. Social Data Web Service
        2. 5.2.1.2. Activity Feeds
          1. 5.2.1.2.1. Tags and Notes
    3. 5.3. BLOGS AND WIKI SITE DEFINITIONS
      1. 5.3.1. Enterprise Wiki Sites
    4. 5.4. SUMMARY
  12. 6. Search
    1. 6.1. SEARCH OPTIONS WITH SHAREPOINT 2010
      1. 6.1.1. SharePoint Foundation
      2. 6.1.2. Search Server 2010 Express
      3. 6.1.3. Search Server 2010
      4. 6.1.4. SharePoint Server 2010
      5. 6.1.5. FAST Search Server 2010 for SharePoint
      6. 6.1.6. Choosing the Right Search Product
      7. 6.1.7. Common Platform and APIs
    2. 6.2. SEARCH USER EXPERIENCE
      1. 6.2.1. Search Center
      2. 6.2.2. Visual Cues in Search Results with FAST
        1. 6.2.2.1. Thumbnails and Previews
        2. 6.2.2.2. Visual Best Bets
        3. 6.2.2.3. Exploration and Refinement
      3. 6.2.3. "Conversational" Search
        1. 6.2.3.1. Sort Results on Managed Properties
        2. 6.2.3.2. Similar Results
        3. 6.2.3.3. Result Collapsing
        4. 6.2.3.4. Contextual Search Capabilities
        5. 6.2.3.5. Relevancy Tuning by Document or Site Promotions
        6. 6.2.3.6. Synonyms
      4. 6.2.4. People Search
    3. 6.3. SEARCH ARCHITECTURE AND TOPOLOGIES
      1. 6.3.1. SharePoint Search Key Components
        1. 6.3.1.1. Search Topologies, Scaling, and High Availability
        2. 6.3.1.2. High Availability and Resiliency
      2. 6.3.2. FAST Architecture and Topology
      3. 6.3.3. Scale-Out with FAST
      4. 6.3.4. How Architecture Meets Applications
    4. 6.4. DEVELOPING WITH ENTERPRISE SEARCH
      1. 6.4.1. Range of Customization
      2. 6.4.2. Top Customization Scenarios
      3. 6.4.3. Search-Driven Applications
    5. 6.5. CUSTOMIZING THE SEARCH USER EXPERIENCE
      1. 6.5.1. Example: New Core Results Web Part
      2. 6.5.2. Example: Adding Sorting to Your New Web Part
      3. 6.5.3. Web Parts with FAST
    6. 6.6. SEARCH CONNECTORS AND SEARCHING LOB SYSTEMS
      1. 6.6.1. New Connector Framework Features
      2. 6.6.2. Creating Indexing Connectors
        1. 6.6.2.1. Model Files
        2. 6.6.2.2. Tooling in SPD and VS2010
        3. 6.6.2.3. Writing Custom Connectors
        4. 6.6.2.4. A Few More Tips
        5. 6.6.2.5. Deploying Connectors
      3. 6.6.3. FAST-Specific Indexing Connectors
      4. 6.6.4. Customizing Connectivity in Summary
    7. 6.7. WORKING WITH FEDERATION
      1. 6.7.1. Customization Examples Using Federation
      2. 6.7.2. Further Considerations in Federation
    8. 6.8. WORKING WITH THE QUERY OM
      1. 6.8.1. Query-Side APIs and OMs
        1. 6.8.1.1. The Federation Object Model (OM)
        2. 6.8.1.2. The Query Web Service
        3. 6.8.1.3. The Query RSS Feed
        4. 6.8.1.4. The Query Object Model
      2. 6.8.2. Query Syntax
      3. 6.8.3. FAST Query Language (FQL)
      4. 6.8.4. Examples Using Query Customization
    9. 6.9. SOCIAL SEARCH
      1. 6.9.1. End-User-Visible Functionality
        1. 6.9.1.1. Mining and Discovering Expertise
        2. 6.9.1.2. Improving Search Based on Social Behavior
      2. 6.9.2. Social Search Architecture and Operations
        1. 6.9.2.1. Architecture and Key SSAs
        2. 6.9.2.2. Managing User Profiles
        3. 6.9.2.3. Social Tags
    10. 6.10. CONTENT ENHANCEMENT
      1. 6.10.1. Metadata, Linguistics, and Search
        1. 6.10.1.1. Crawled Properties, Managed Properties, and Schemas
        2. 6.10.1.2. Multilingual Search
        3. 6.10.1.3. The Problem of Missing Metadata
      2. 6.10.2. Advanced Content Processing with FAST
        1. 6.10.2.1. Content Pipeline Configuration
        2. 6.10.2.2. Content Pipeline Extensibility
      3. 6.10.3. Multilingual Search
    11. 6.11. EXTENDING SEARCH USING THE ADMINISTRATIVE OM
      1. 6.11.1. Authentication and Security
      2. 6.11.2. Search Reports
    12. 6.12. SUMMARY: CUSTOMIZING SEARCH WITH SHAREPOINT 2010
  13. 7. ECM: Records Management
    1. 7.1. SHAREPOINT 2010 RECORDS MANAGEMENT OVERVIEW
      1. 7.1.1. Recordization
      2. 7.1.2. eDiscovery and Holds
      3. 7.1.3. Auditing and Reporting
    2. 7.2. PROGRAMMING RM IN SHAREPOINT
      1. 7.2.1. Declaring and Undeclaring a Record
      2. 7.2.2. Creating Retention Schedules
      3. 7.2.3. Creating Organizer Rules
      4. 7.2.4. Creating Workflows That Use RM
    3. 7.3. SUMMARY
  14. 8. Web Content Management
    1. 8.1. THE CONTENT LIFECYCLE IN WEB CONTENT MANAGEMENT
      1. 8.1.1. Separation of Content and Development
      2. 8.1.2. The Important Role of Information Architecture
    2. 8.2. FOUNDATIONS OF WEB CONTENT MANAGEMENT
      1. 8.2.1. Activating the Publishing Features
        1. 8.2.1.1. Publishing Feature Components
      2. 8.2.2. Page Processing Model
      3. 8.2.3. Site Columns
        1. 8.2.3.1. Browser-Based Site Column Development
        2. 8.2.3.2. Feature-Based Site Column Development
        3. 8.2.3.3. Object Model-Based Site Column Development
      4. 8.2.4. Content Types
        1. 8.2.4.1. Understanding Content Type Ids
        2. 8.2.4.2. Browser-Based Content Type Development
        3. 8.2.4.3. Feature-Based Content Type Development
        4. 8.2.4.4. Object Model-Based Content Type Development
        5. 8.2.4.5. Client Object Model-Based Content Type Development
      5. 8.2.5. Page Layouts
        1. 8.2.5.1. Developing Page Layouts
        2. 8.2.5.2. Create a Page Layout with SharePoint Designer
        3. 8.2.5.3. Create a Page Layout with Visual Studio
      6. 8.2.6. Master Pages
        1. 8.2.6.1. Create a Master Page with SharePoint Designer
        2. 8.2.6.2. Create a Master Page with Visual Studio
        3. 8.2.6.3. Setting the Master Page in Code
      7. 8.2.7. Navigation
        1. 8.2.7.1. Customizing Navigation with Site Settings
        2. 8.2.7.2. Implementing Navigation in the Master Page
        3. 8.2.7.3. Customizing Navigation Using the Object Model
        4. 8.2.7.4. Customizing Navigation with Web Parts
      8. 8.2.8. Content by Query Web Part
        1. 8.2.8.1. Using the Content by Query Web Part
        2. 8.2.8.2. Customize Content by Query Web Part in XML
        3. 8.2.8.3. Use Custom XSL to Modify the Presentation of Content
        4. 8.2.8.4. Redeploy the Content by Query Web Part Using Visual Studio
      9. 8.2.9. Content Conversion
        1. 8.2.9.1. Setup Document Conversion
        2. 8.2.9.2. Using Document Conversion
    3. 8.3. SUMMARY
  15. 9. Electronic Forms
    1. 9.1. INTRODUCING THE TRAINING MANAGEMENT APPLICATION
    2. 9.2. CUSTOMIZING SHAREPOINT LIST FORMS
      1. 9.2.1. Creating the Trainings List
      2. 9.2.2. Customizing SharePoint List Forms
      3. 9.2.3. Adding Intelligence Using Rules and Views
      4. 9.2.4. Publishing List Forms
      5. 9.2.5. Distributing the Trainings List
    3. 9.3. DESIGNING INFOPATH FORM TEMPLATES
      1. 9.3.1. What Is a Form Library?
      2. 9.3.2. Designing Your Form Template
      3. 9.3.3. Querying SharePoint Lists in Forms
      4. 9.3.4. Querying REST Web Services
      5. 9.3.5. Submit Behavior
      6. 9.3.6. Form Programming
      7. 9.3.7. Publishing an InfoPath Form
      8. 9.3.8. Publishing to a Form Library vs. Publishing to a Content Type
      9. 9.3.9. Form Security
      10. 9.3.10. Sandboxing Your Forms
      11. 9.3.11. Form Anatomy
      12. 9.3.12. Extracting the Form's Data
    4. 9.4. TOOLS FOR FORM DEVELOPERS
      1. 9.4.1. The Rule Inspector
      2. 9.4.2. The Design Checker
      3. 9.4.3. IE Developer Tools
      4. 9.4.4. Fiddler Tool
      5. 9.4.5. Tiny Inline Tools
    5. 9.5. BUILDING WEB PARTS USING INFOPATH
      1. 9.5.1. InfoPath Form Web Part
      2. 9.5.2. Using InfoPath to Create Connected Web Parts
      3. 9.5.3. Getting Data from Other Web Parts
      4. 9.5.4. Empowering Users with Mashups
    6. 9.6. SUMMARY
  16. 10. ECM: Document Management
    1. 10.1. A NEW ENTERPRISE CONTENT MINDSET
      1. 10.1.1. New ECM Features
      2. 10.1.2. Expanded ECM Object Model
    2. 10.2. GETTING THE MOST OUT OF THE DOCUMENT CENTER
      1. 10.2.1. Visual Studio and the Document Center
        1. 10.2.1.1. Creating and Customizing a Document Center
          1. 10.2.1.1.1. Exporting the SharePoint Site
          2. 10.2.1.1.2. Importing the .wsp File
          3. 10.2.1.1.3. Debugging and Deploying the Project
    3. 10.3. CONTENT ROUTING
      1. 10.3.1. Managing the Content Organizer
        1. 10.3.1.1. The Drop Off Library
        2. 10.3.1.2. Creating Rules
          1. 10.3.1.2.1. Rules List
    4. 10.4. USING DOCUMENT LIBRARIES IN THE DOCUMENT CENTER
      1. 10.4.1. Metadata Navigation and Filtering
        1. 10.4.1.1. Queries and Indices
      2. 10.4.2. Visual Studio and Document Libraries
        1. 10.4.2.1. Create a Document Library List Definition in Visual Studio
    5. 10.5. MANAGED METADATA
      1. 10.5.1. Types of Metadata
        1. 10.5.1.1. Tagging and Taxonomy
      2. 10.5.2. Managed Metadata Service Application
        1. 10.5.2.1. Term Store Management Tool
          1. 10.5.2.1.1. Create a Term Set Manually
        2. 10.5.2.2. Managed Metadata Columns
        3. 10.5.2.3. Taxonomy Object Model
    6. 10.6. CONTENT TYPES
      1. 10.6.1. Content Type Syndication
        1. 10.6.1.1. Publishing
      2. 10.6.2. The Document Set
    7. 10.7. DOCUMENT ID SERVICE
      1. 10.7.1. Create a Custom Document ID Provider
        1. 10.7.1.1. Create a Document ID Provider
    8. 10.8. SUMMARY
  17. 11. Business Connectivity Services
    1. 11.1. INTRODUCING BUSINESS CONNECTIVITY SERVICES
      1. 11.1.1. Creating Simple BCS Solutions
        1. 11.1.1.1. Creating External Content Types
        2. 11.1.1.2. Creating External Lists
    2. 11.2. UNDERSTANDING BCS ARCHITECTURE
      1. 11.2.1. Understanding Connectors
      2. 11.2.2. Understanding Business Data Connectivity
        1. 11.2.2.1. Managing the Business Data Connectivity Service
        2. 11.2.2.2. Introducing the BDC Server Runtime
        3. 11.2.2.3. Understanding the Client Cache
        4. 11.2.2.4. Introducing the Office Integration Runtime
      3. 11.2.3. Understanding the Secure Store Service
      4. 11.2.4. Understanding Package Deployment
    3. 11.3. UNDERSTANDING AUTHENTICATION SCENARIOS
      1. 11.3.1. Configuring Authentication Models
        1. 11.3.1.1. Understanding Passthrough Authentication
        2. 11.3.1.2. Understanding RevertToSelf
        3. 11.3.1.3. Understanding Secure Store Options
      2. 11.3.2. Accessing Claims-Based Systems
      3. 11.3.3. Accessing Token-Based Systems
      4. 11.3.4. Managing Client Authentication
      5. 11.3.5. Managing Authorization
    4. 11.4. CREATING EXTERNAL CONTENT TYPES
      1. 11.4.1. Creating Operations
      2. 11.4.2. Creating Relationships
      3. 11.4.3. Defining Filters
    5. 11.5. USING ECTS IN SHAREPOINT 2010
      1. 11.5.1. Creating Custom Forms
      2. 11.5.2. Using External Columns
      3. 11.5.3. Business Data Parts
      4. 11.5.4. Creating a Profile Page
      5. 11.5.5. Searching External Systems
      6. 11.5.6. Supplementing User Profiles
    6. 11.6. USING ECTS IN OFFICE 2010
      1. 11.6.1. Using the SharePoint Workspace
      2. 11.6.2. Understanding Outlook Integration
      3. 11.6.3. Using Word Quick Parts
    7. 11.7. CREATING CUSTOM BCS SOLUTIONS
      1. 11.7.1. Using the Runtime Object Model
      2. 11.7.2. Using the Administration Object Model
      3. 11.7.3. Creating .NET Assembly Connectors
    8. 11.8. SUMMARY
  18. 12. Workflow
    1. 12.1. TRAINING APPROVAL WORKFLOW
      1. 12.1.1. Creating the Training Content Type
    2. 12.2. WORKFLOW DEVELOPMENT LIFECYCLE
      1. 12.2.1. Prototyping in Visio
      2. 12.2.2. Customizing the Workflow in SharePoint Designer
        1. 12.2.2.1. Reusable Workflows
        2. 12.2.2.2. Association and Initiation Form Parameters
        3. 12.2.2.3. Customizing the Workflow Logic
          1. 12.2.2.3.1. Step 1: On Approval Process
          2. 12.2.2.3.2. Step 2: After Approval Process
        4. 12.2.2.4. Workflow InfoPath Forms
        5. 12.2.2.5. Associating a Workflow to a Content Type
        6. 12.2.2.6. Testing the Workflow
      3. 12.2.3. Creating Custom Actions with Visual Studio 2010
        1. 12.2.3.1. Setting Up the Visual Studio Project
        2. 12.2.3.2. Coding the Activity
        3. 12.2.3.3. Preparing the Activity for Deployment
        4. 12.2.3.4. Deploying the Activity
        5. 12.2.3.5. Completing SharePoint Designer Workflow
        6. 12.2.3.6. Workflow Visualization and Monitoring
      4. 12.2.4. Importing to Visual Studio 2010
        1. 12.2.4.1. Identifying the Missing Pieces
        2. 12.2.4.2. Adding the Missing References
        3. 12.2.4.3. Packaging the InfoPath Forms
        4. 12.2.4.4. Associating the Forms with the Workflow
        5. 12.2.4.5. Switching to the Right InfoPath View Based on the Workflow Context
        6. 12.2.4.6. Displaying Tasks Using the WrkTaskIP.aspx Page
        7. 12.2.4.7. Associating the Workflow with the Training Content Type
        8. 12.2.4.8. Adding Some Code to the Workflow
        9. 12.2.4.9. Putting It All Together
    3. 12.3. BUILDING WORKFLOWS WITH VISUAL STUDIO 2010
      1. 12.3.1. Site Workflows
        1. 12.3.1.1. Building a Sequential Site Workflow
        2. 12.3.1.2. Adding an ASPX Initiation Form
        3. 12.3.1.3. Coding the Activities
        4. 12.3.1.4. Compiling and Deploying
        5. 12.3.1.5. Debugging the Workflow
      2. 12.3.2. Pluggable Workflow Services
      3. 12.3.3. Tapping into Workflow Events
    4. 12.4. SUMMARY
  19. 13. Business Intelligence
    1. 13.1. CHALLENGES WITH TRADITIONAL BUSINESS INTELLIGENCE
    2. 13.2. INTEGRATION WITH SHAREPOINT: THE HISTORY
    3. 13.3. HIGHLIGHTS OF BUSINESS INTELLIGENCE IN SHAREPOINT SERVER 2010
    4. 13.4. IMPORTANT TERMS AND CONCEPTS
    5. 13.5. USING THE ADVENTURE WORKS SAMPLE DATABASES
    6. 13.6. THE STARTING POINT: BUSINESS INTELLIGENCE CENTER
    7. 13.7. EXCEL SERVICES
      1. 13.7.1. Excel Services Architecture
      2. 13.7.2. Office Data Connection
        1. 13.7.2.1. The Unattended Service Account
      3. 13.7.3. Authoring Workbooks in Excel
        1. 13.7.3.1. PivotTable and PivotCharts
        2. 13.7.3.2. Label Filtering
        3. 13.7.3.3. Visual Slicers
        4. 13.7.3.4. Sparklines
        5. 13.7.3.5. Show Value As
        6. 13.7.3.6. Named Sets
        7. 13.7.3.7. What-If Analysis
      4. 13.7.4. Publishing the Workbook
        1. 13.7.4.1. Trusted Locations
        2. 13.7.4.2. Publishing to Excel Services
        3. 13.7.4.3. Switching to Edit Mode
        4. 13.7.4.4. Excel Web Access Web Part
    8. 13.8. PERFORMANCEPOINT SERVICES
      1. 13.8.1. Dashboard vs. Scorecard
      2. 13.8.2. PerformancePoint Services Architecture
        1. 13.8.2.1. The Unattended Service Account
      3. 13.8.3. Introducing Dashboard Designer
      4. 13.8.4. Creating Your First Dashboard
        1. 13.8.4.1. Dashboard Datasource
        2. 13.8.4.2. Datasource Authentication Types
        3. 13.8.4.3. Tracking Performance Using KPIs
        4. 13.8.4.4. Building the Scorecard
        5. 13.8.4.5. Native Reporting
        6. 13.8.4.6. Putting Everything Together
      5. 13.8.5. One-Click Publishing to SharePoint
        1. 13.8.5.1. What Else Is in the Box?
      6. 13.8.6. Time Intelligence Filtering
    9. 13.9. REPORTING SERVICES 2008 R2
      1. 13.9.1. Integration Modes
      2. 13.9.2. Local Mode Architecture
      3. 13.9.3. Connected Mode Architecture
        1. 13.9.3.1. Authentication Mode
        2. 13.9.3.2. Supporting Multiple Zones
        3. 13.9.3.3. Anonymous Access to Reports
        4. 13.9.3.4. Reporting Services Execution Account
      4. 13.9.4. Configuring the BI Center
      5. 13.9.5. BIDS 2008 R2 or Report Builder 3.0?
      6. 13.9.6. Building and Deploying Reports
        1. 13.9.6.1. Authoring Reports
        2. 13.9.6.2. Laying Out Your Report
        3. 13.9.6.3. Data Visualizations
        4. 13.9.6.4. Tablix
        5. 13.9.6.5. Publishing Your Report to SharePoint
        6. 13.9.6.6. Publishing Report Parts
        7. 13.9.6.7. Report Viewer Web Part
        8. 13.9.6.8. Connectable Report Viewer Web Part
        9. 13.9.6.9. Report as a Data Feed
        10. 13.9.6.10. Open with Report Builder
      7. 13.9.7. Caching and Snapshots
        1. 13.9.7.1. Stored Credentials
        2. 13.9.7.2. Managing Parameters
        3. 13.9.7.3. What's the Plan?
        4. 13.9.7.4. Caching Your Report
        5. 13.9.7.5. Managing Cache Refresh Plans
        6. 13.9.7.6. Snapshots
    10. 13.10. REPORTING ON SHAREPOINT DATA
      1. 13.10.1. How About Querying Large Lists?
      2. 13.10.2. Creating a Sample List
      3. 13.10.3. Using SQL Server Reporting Services 2008 R2
      4. 13.10.4. Using Access 2010 and Access Services
    11. 13.11. CLAIMS AND BI SOLUTIONS
    12. 13.12. SUMMARY
  20. 14. SharePoint Online
    1. 14.1. SHAREPOINT ONLINE OVERVIEW
    2. 14.2. DEVELOPING IN THE CLOUD
      1. 14.2.1. Visual Sandbox Web Parts
      2. 14.2.2. Debugging Your Solutions
    3. 14.3. EXAMPLE CLOUD SCENARIOS
    4. 14.4. SUMMARY
  21. A. Additional Help and Resources
    1. A.1. HELP FILES FROM MICROSOFT
    2. A.2. ONLINE HELP FROM MICROSOFT
    3. A.3. HELP FROM THE COMMUNITY