You are previewing Microsoft® SharePoint® 2010 Developer Reference.
O'Reilly logo
Microsoft® SharePoint® 2010 Developer Reference

Book Description

Sharpen your SharePoint development skills with this complete and concrete reference guide to Microsoft SharePoint Foundation 2010 and Microsoft SharePoint Server 2010. This book shows you how to develop real-world secure solutions with techniques for extending and customizing the SharePoint environment with Visual Studio® 2010.

Table of Contents

  1. Microsoft® SharePoint® 2010 Developer Reference
    1. SPECIAL OFFER: Upgrade this ebook with O’Reilly
    2. A Note Regarding Supplemental Files
    3. Introduction
      1. Who Should Read This Book
      2. Who Should Not Read This Book
        1. Assumptions
      3. Organization of This Book
        1. Finding Your Best Starting Point in This Book
    4. Conventions and Features in This Book
      1. System Requirements
        1. Code Samples
        2. Installing the Code Samples
        3. Using the Code Samples
    5. Errata & Book Support
      1. We Want to Hear from You
      2. Stay in Touch
    6. Acknowledgments
    7. I. Getting Started
      1. 1. Introducing Microsoft SharePoint 2010
        1. What Is SharePoint?
        2. Main Capabilities
          1. Sites
          2. Communities
          3. Content
          4. Search
          5. Insights
          6. Composites
        3. SharePoint Basic Concepts
          1. SharePoint Central Administration
          2. Site Collections and Websites
          3. Lists, Libraries, Items, and Documents
          4. Web Parts and Web Part Pages
        4. Architectural Overview
          1. Logical and Physical Architecture
          2. Service Applications
          3. The Role of Databases
        5. SharePoint Editions
          1. SharePoint Foundation
          2. SharePoint Server Standard
          3. SharePoint Server Enterprise
          4. SharePoint for Internet Sites
          5. SharePoint Online
        6. SharePoint for Developers
          1. ASP.NET Integration
          2. Server-Side Technologies
          3. Client-Side Technologies
          4. Web Parts and UI
          5. Data Provisioning
          6. Event Receivers and Workflows
            1. Features, Solutions Deployment, and Sandboxing
          7. Security Infrastructure
          8. Business Connectivity Services
          9. Windows PowerShell Support
        7. Developer Tools
          1. Microsoft SharePoint Designer 2010
          2. Microsoft Visual Studio 2010
          3. SharePoint Server Explorer
          4. Solution Explorer and Feature Designer
        8. Summary
      2. 2. Data Foundation
        1. Lists of Items and Contents
          1. Creating a New List
            1. Creating a New List
            2. Standard List Templates
            3. Custom List Templates
            4. Views
            5. Creating a Document Library
        2. Site Columns
        3. Content Types
        4. Websites
        5. Summary
    8. II. Programming Microsoft SharePoint 2010
      1. 3. Server Object Model
        1. Startup Environment
        2. Objects Hierarchy
          1. SPFarm, SPServer, SPService, and SPWebApplication
          2. SPSite and SPWeb
          3. SPList and SPListItem
          4. SPDocumentLibrary and SPFile
          5. SPGroup, SPUser, and Other Security Types
          6. SPControl and SPContext
        3. Common and Best Practices
          1. Disposing Resources
          2. Handling Exceptions
          3. Transactions
          4. AllowUnsafeUpdates and FormDigest
        4. Real-Life Examples
          1. Creating a New Site Collection
          2. Creating a New Website
          3. Lists and Items
            1. Creating a New List
            2. Creating a New List Item
            3. Modifying an Existing List Item
            4. Concurrency Conflicts
            5. Deleting an Existing List Item
            6. Querying for List Items
          4. Document Libraries and Files
            1. Creating a New Document Library
            2. Uploading a New Document
            3. Downloading a Document
            4. Document Check-In and Check-Out
            5. Copying and Moving Files
            6. Managing Versions of Documents
          5. Groups and Users
            1. Creating a New User
            2. Managing Groups Membership
            3. Managing Users and Groups Permissions
        5. Summary
      2. 4. LINQ to SharePoint
        1. LINQ Overview
          1. The Goal of LINQ
          2. LINQ Under the Covers
        2. Introducing LINQ to SharePoint
        3. Modeling with SPMetal.EXE
        4. Querying Data
        5. Managing Data
          1. Inserting a New Item
          2. Deleting or Recycling an Existing Item
        6. Advanced Topics
          1. Handling Concurrency Conflicts
          2. Identity Management and Refresh
          3. Disconnected Entities
          4. Model Extensions and Versioning
        7. Summary
      3. 5. Client-Side Technologies
        1. Architectural Overview
        2. SharePoint Client Object Model
          1. Managed Client Object Model
          2. Silverlight Client Object Model
          3. ECMAScript Client Object Model
        3. Client Object Model by Examples
          1. Lists and Items
            1. Creating a New List
            2. Creating and Updating a List Item
            3. Concurrency Conflicts and Exception Handling
            4. Deleting an Existing List Item
            5. Paging Queries of List Items
          2. Document Libraries and Files
            1. Creating a New Document Library
            2. Uploading a New Document
            3. Downloading a Document
            4. Check-In and Check-Out of Documents
            5. Copying and Moving Files
        4. SOAP Services
        5. The REST API
          1. Querying for Data with .NET and LINQ
          2. Managing Data
        6. Summary
    9. III. Developing Web Parts
      1. 6. Web Part Basics
        1. Web Part Architecture
        2. A “Hello World” Web Part
        3. Web Part Deployment
        4. Real Web Parts
          1. Classic Web Parts
          2. Visual Web Parts
        5. Configurable Web Parts
          1. Configurable Parameters
          2. Editor Parts
        6. Handling Display Modes
        7. Custom Web Part Verbs
        8. The SharePoint-Specific WebPart class
        9. Summary
      2. 7. Advanced Web Parts
        1. Connectable Web Parts
        2. Supporting AJAX
          1. Connectable Web Parts with AJAX
        3. Silverlight and External Applications
        4. Asynchronous Programming
        5. XSLT Rendering
        6. Deployment, Security, and Versioning
          1. Deployment and Versioning
          2. SafeControls and Cross-Site-Scripting SafeGuard
        7. Summary
    10. IV. Extending Microsoft SharePoint 2010
      1. 8. SharePoint Features and Solutions
        1. Features and Solutions
          1. Feature Element Types
          2. Features and Solutions Deployment
          3. Packaging with Visual Studio 2010
        2. Upgrading Solutions and Features
        3. Feature Receivers
          1. Handling FeatureUpgrading Events
        4. Summary
      2. 9. Extending the User Interface
        1. Custom Actions
          1. The CustomAction Element
          2. The CustomActionGroup Element
          3. The HideCustomAction Element
          4. Server-Side Custom Actions
        2. Ribbons
          1. Ribbon Command
        3. Delegate Controls
        4. Custom Contents
          1. Images and Generic Content
          2. Application Pages
          3. Content Pages, Web Part Pages, and Galleries
        5. Status Bar and Notification Area
        6. Dialog Framework
        7. Summary
      3. 10. Data Provisioning
        1. Site Columns
        2. Content Types
          1. Content Type IDs
          2. More about Content Types
          3. Document Content Types
        3. List Definitions
          1. List Schema File
            1. The List Element
            2. The MetaData Element
          2. Defining a Custom View
            1. The ListTemplate Definition File
        4. Summary
      4. 11. Developing Custom Fields
        1. Fields Type Basics
        2. The SPField Class
        3. Developing Custom Field Types
          1. A Basic E-Mail Field Type
          2. A Multicolumn Field Type
          3. Field Rendering Control
          4. Field Rendering Templates
          5. Field Rendering Using CAML
          6. Field Rendering Using XSLT
        4. Supporting Mobile Devices
          1. Field Rendering Mobile Templates
        5. Custom Field Editor
          1. Custom Properties Persistence
        6. Summary
      5. 12. Event Receivers
        1. Types of Receivers
        2. Item-Level Event Receivers
        3. List-Level Event Receivers
        4. Web-Level Event Receivers
        5. Workflow Event Receivers
        6. E-Mail Event Receivers
        7. Avoiding Event Loops
        8. Event Deployment and Binding
        9. Event Synchronization
        10. Event Security
        11. Summary
      6. 13. Document Management
        1. Document Sets
          1. Provisioning Document Sets
          2. Handling Document Sets by Code
        2. Document ID
          1. Custom Document ID Provider
        3. File Conversion Services
          1. Word Automation Services
        4. Summary
      7. 14. Site Templates
        1. Native Site Definitions
        2. Site Definitions
        3. Site Definitions with Visual Studio
        4. Custom Web Templates
        5. Site Definitions versus Web Templates
        6. Summary
      8. 15. Developing Service Applications
        1. Service Application Architecture
          1. Service Application Framework
        2. Creating a Service Application
          1. Custom Protocol Service Application
          2. Solution Outline
          3. Service Application
          4. Service Application Database
          5. Service
          6. Service Instance
          7. Administrative Pages
          8. Service Application Deployment
          9. Service Application Proxy
          10. Service Application Consumer
          11. Service Application Proxy Deployment
        3. Final Thoughts
        4. Summary
    11. V. Developing Workflows
      1. 16. SharePoint Workflows Architecture
        1. Workflow Foundation Overview
          1. Workflow Foundation Architecture
          2. Workflow Types
          3. Workflows Definition
          4. Custom Activities
          5. Workflow Execution Model
        2. Workflows in SharePoint
          1. Workflow Targets and Association
          2. SharePoint 2010 Custom Activities
        3. Summary
      2. 17. Workflows with SharePoint Designer 2010
        1. SharePoint Designer 2010 Workflows
          1. Workflow Designer
          2. Conditions and Actions
          3. Structure of a Published Workflow
        2. Designing a Workflow
          1. Workflow Outline Definition
          2. Workflow Settings
          3. Workflow User Experience
        3. Visio 2010 Integration
        4. Summary
      3. 18. Workflows with Visual Studio 2010
        1. Workflow Modeling
          1. Creating the Workflow Project
          2. Workflow Outline
            1. Workflow Deployment
            2. Workflow Association
            3. Workflow Versioning
        2. Correlation Tokens
        3. Site Workflows
        4. Summary
      4. 19. Workflow Forms
        1. Management Forms
          1. Association Form
          2. Initiation Form
          3. Modification Form
        2. Task Forms
          1. Workflow Tasks
        3. Forms Deployment
        4. Summary
      5. 20. Advanced Workflows
        1. Custom Actions and Conditions
          1. Dependency Properties
          2. Custom Actions for SharePoint Designer 2010
          3. Custom Conditions for SharePoint Designer 2010
        2. Workflow Event Receivers
        3. Workflow Services
          1. Implementing the Service
          2. Workflow Service Deployment
          3. Communication Activities
        4. Workflow Management by Code
          1. Workflow Server Object Model
          2. Workflow Web Service
        5. SPTimer Service and Workflows
        6. Summary
    12. VI. Security Infrastructure
      1. 21. Authentication and Authorization Infrastructure
        1. Authentication Infrastructure
          1. Classic Mode Authentication
            1. Claims-Based Authentication
        2. Claims-Authentication Types
          1. Windows Authentication
            1. Windows Authentication
            2. Forms-Based Authentication
        3. Configuring FBA with SQL Membership Provider
          1. Configuring the SQL Server Database
            1. Configuring SharePoint web.config Files
            2. Configuring SQL Server Permissions
            3. Configuring SharePoint
            4. Enabling FBA Users or Roles
        4. Authorization Infrastructure
        5. Summary
      2. 22. Claims-Based Authentication and Federated Identities
        1. Claims-Based Authentication and WS-Federation
        2. Implementing an STS with Windows Identity Foundation
          1. Building a Security Token Service
          2. Building a Relying Party
        3. SharePoint Trusted Identity Providers
          1. Trusting the IP/STS
            1. Registering the Identity Provider and Mapping Claims
          2. Configuring the Target Web Application
        4. Summary
      3. 23. Code Access Security and Sandboxed Solutions
        1. Code Access Security
          1. Partially Trusted ASP.NET Code
            1. SharePoint and CAS
        2. Sandboxed Solutions Overview
          1. Sandboxed Solutions Architecture
            1. Solutions Monitoring
            2. Solutions Validation
        3. Creating a Sandboxed Solution
        4. Implementing a Solution Validator
        5. Full-Trust Proxies
          1. Implementing a Full-Trust Proxy
          2. Registering the Full-Trust Proxy
          3. Consuming the Full-Trust Proxy
        6. Sandboxed Solutions and Office 365
        7. Summary
    13. VII. Enterprise Features
      1. 24. Programming the Search Engine
        1. Search Engine Overview for Developers
        2. Customizing and Extending the User Interface
          1. Customizing the Output via XSLT
          2. Developing Custom Web Parts
        3. Federation Framework
          1. Implementing a Custom Federation Provider
        4. Using the Search Engine by Code
          1. Federated Search Object Model
          2. Query Object Model
        5. Query Web Service
        6. Summary
      2. 25. Business Connectivity Services
        1. Overview of Business Connectivity Services
        2. Accessing a Database
        3. BDC Model File
        4. Offline Capabilities
        5. Accessing a WCF/SOAP Service
        6. .NET Custom Model
          1. Developing a Custom Model from Scratch
        7. Associating Entities
        8. Programming with BCS Object Model
        9. Summary
    14. Index
    15. About the Author
    16. SPECIAL OFFER: Upgrade this ebook with O’Reilly