You are previewing Microsoft SharePoint 2013: Developer Reference.
O'Reilly logo
Microsoft SharePoint 2013: Developer Reference

Book Description

Design and develop great solutions using SharePoint 2013

Develop your business collaboration solutions quickly and effectively with the rich set of tools, classes, libraries, and controls available in Microsoft SharePoint 2013. With this practical reference, enterprise-development expert Paolo Pialorsi shows you how to extend and customize the SharePoint environment—and helps you sharpen your development skills. Ideal for ASP.NET developers with Microsoft .NET and C# knowledge.

Discover how to:

  • Create custom SharePoint apps and publish them in the Office Store

  • Orchestrate your workflows with the new Workflow Manager 1.0

  • Access and manage your SharePoint data with the REST APIs

  • Federate SharePoint with Windows Azure Access Control Services

  • Customize your SharePoint 2013 UI for a better user experience

  • Gain a thorough understanding of authentication and authorization

  • Table of Contents

    1. Microsoft SharePoint 2013: Developer Reference
    2. Dedication
    3. A Note Regarding Supplemental Files
    4. Introduction
      1. Who should read this book
        1. Assumptions
      2. Who should not read this book
      3. Organization of this book
        1. Finding your best starting point in this book
      4. Conventions and features in this book
      5. System requirements
      6. Code samples
      7. Acknowledgments
      8. Errata & book support
      9. We want to hear from you
      10. Stay in touch
    5. I. Getting started
      1. 1. Microsoft SharePoint 2013: A quick tour
        1. What is SharePoint?
        2. Main benefits
          1. Share
          2. Organize
          3. Discover
          4. Build
          5. Manage
        3. SharePoint basic concepts
          1. SharePoint Central Administration
          2. SharePoint Administration via PowerShell
          3. Site collections and websites
          4. Lists, libraries, items, documents, and other apps
          5. App Parts and Web Parts
        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 Online
        6. SharePoint for developers
          1. ASP.NET integration
          2. Server-side technologies
          3. Client-side technologies
          4. App Parts, Web Parts, and the UI
          5. Data provisioning
          6. Event receivers and workflows
          7. Features, solutions deployment, and sandboxing
          8. Security infrastructure
          9. Business Connectivity Services
          10. Windows PowerShell for developers
        7. Developer tools
          1. SharePoint Designer 2013
          2. Microsoft Visual Studio 2012
          3. SharePoint Server Explorer
          4. Solution Explorer and the Feature Designer
        8. Summary
      2. 2. SharePoint data fundamentals
        1. Lists of items and contents
          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. Sites
        5. Summary
    6. II. Developing SharePoint Solutions
      1. 3. 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
            2. Working with lists in Visual Studio 2012
        4. Summary
      2. 4. SharePoint features and solutions
        1. Features and solutions
          1. Feature element types
          2. Feature deployment
          3. Solution deployment
          4. Packaging with Visual Studio 2012
        2. Upgrading solutions and features
        3. Feature receivers
          1. Handling FeatureUpgrading events
        4. Summary
      3. 5. 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. Resource disposal
          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 title
            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 checkout
            5. Copying and moving files
            6. Managing versions of documents
          5. Groups and users
            1. Creating a new user
            2. Managing group membership
            3. Managing user and group permissions
        5. Summary
      4. 6. LINQ to SharePoint
        1. LINQ overview
          1. The goal of LINQ
          2. LINQ under the hood
        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
      5. 7. Client-side technologies
        1. Architectural overview
        2. Client Object Model
          1. .NET Client-Side Object Model
            1. Authenticating
            2. Data retrieval and projection
            3. ClientObject vs. ClientValueObject
          2. Silverlight Client Object Model
          3. The JSOM
        3. Client Object Model examples
          1. Creating a new list
          2. Creating and updating a list item
          3. Exception handling with lists
          4. Deleting an existing list item
          5. Paging queries of list items
          6. Creating a new document library
          7. Uploading and downloading documents
          8. Checking documents in and out
          9. Copying and moving files
        4. The REST API
          1. Querying for data with .NET and LINQ
          2. Managing data
        5. Summary
    7. III. Developing SharePoint apps
      1. 8. SharePoint apps
        1. Introducing apps
          1. Development environment
        2. Your first app
          1. Sample SharePoint-hosted app outline
          2. The app website
          3. Provisioning content
          4. Using the Client-Side Object Model
        3. Inside AppManifest.xml
          1. The General tab
          2. The Permissions tab
          3. The Prerequisites tab
          4. The Supported Locales tab
          5. The Remote Endpoints tab
        4. App Parts and custom UI extensions
          1. Creating App Parts
          2. Creating custom UI extensions
        5. Autohosted apps
          1. Creating an autohosted app
          2. Converting a site to a SharePoint app
          3. Handling a SQL Azure database
          4. The SharePoint Chrome control
        6. Provider-hosted apps
        7. Publishing apps and the Office Store
          1. Deploying a SharePoint app
          2. Publishing a SharePoint app
          3. The corporate app catalog
          4. The Office Store
          5. Upgrading apps
        8. App management configuration and deployment
        9. Security infrastructure
        10. Summary
      2. 9. The new SharePoint REST API
        1. Introducing the REST API
          1. API reference
          2. Querying data
          3. Managing data
          4. Cross-domain calls
          5. Security
        2. Common REST API usage
          1. Creating a new list
          2. Creating and updating a list item
          3. Deleting an existing list item
          4. Querying a list of items
          5. Creating a new document library
          6. Uploading or updating a document
          7. Document check-in and checkout
          8. Deleting an existing document
          9. Querying a list of documents
        3. Summary
      3. 10. Remote event receivers
        1. Architecture of remote event receivers
          1. Architecture and contracts
          2. Scopes and types of receivers
        2. A sample remote event receiver
        3. Deployment and registration
        4. App-related receivers
        5. Callback capability
        6. Security
        7. Summary
    8. IV. Extending SharePoint
      1. 11. Developing Web Parts
        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. Connectable Web Parts
        9. Deployment and versioning
        10. Security: Safe controls and cross-site-scripting safeguards
        11. The SharePoint-specific WebPart class
        12. Summary
      2. 12. Customizing the UI
        1. Custom actions
          1. The CustomAction element
          2. The CustomActionGroup element
          3. The HideCustomAction element
          4. Server-side custom actions
        2. Ribbons
          1. Ribbon commands
        3. Custom content
          1. Images and generic content
          2. Application pages
          3. Content pages, Web Part pages, and galleries
        4. Status bar and notification area
        5. Dialog framework
        6. Summary
      3. 13. Web templates
        1. The core techniques
        2. Site definitions
        3. Custom site definitions
        4. Site definitions with Visual Studio
        5. Site and web templates
        6. Site definitions vs. web templates
        7. Summary
      4. 14. Business Connectivity Services
        1. Overview of BCS
        2. Accessing a database
        3. BDC authentication modes
        4. BDC model file
        5. Offline capabilities
        6. Accessing a WCF/SOAP service
        7. Consuming OData services
        8. .NET custom model
          1. Developing a custom model from scratch
        9. Associating entities
        10. Summary
    9. V. Developing workflows
      1. 15. Windows Workflow Foundation
        1. Architecture of Windows Workflow Foundation 4.5
        2. Your first workflow project
        3. Hosting and execution
        4. Custom activities
        5. Runtime scheduler and workflow process life cycle
        6. Workflow persistence
        7. Summary
      2. 16. SharePoint workflow fundamentals
        1. The new architecture
        2. Deployment of Workflow Manager 1.0
        3. Your first workflow with SharePoint Designer 2013
        4. More about workflows
          1. Exception management
          2. Reusable workflows
          3. Versioning workflows
        5. Summary
      3. 17. Developing workflows
        1. Consuming REST services
        2. Visual Studio 2012 for creating workflows
        3. Workflow and SharePoint apps
        4. Workflow forms
        5. Custom workflow tasks
        6. Workflow deployment
          1. Farm-level workflow
          2. SharePoint app workflow
        7. Flowcharts and state machines
        8. Summary
      4. 18. Advanced workflows
        1. Custom actions
          1. Creating a declarative activity
          2. Deployment of declarative actions
          3. Creating a code activity
          4. Deployment of code activities
        2. Security and workflow app principal
        3. Workflow Services Manager
          1. Using Workflow Services Manager
        4. Summary
    10. VI. Security infrastructure
      1. 19. Authentication and authorization infrastructure
        1. Authentication infrastructure
          1. Claims-based authentication
          2. Migrating from classic to claims-based mode
        2. Claims-based authentication types
          1. Windows authentication
          2. Forms-Based Authentication
        3. Configuring FBA with SQL Membership Provider
          1. Configuring the SQL Server database
          2. Configuring SharePoint web.config files
          3. Configuring SQL Server permissions
          4. Configuring SharePoint
          5. Enabling FBA users or roles
        4. Authorization infrastructure
        5. Summary
      2. 20. Claims-based authentication, federated identities, and OAuth
        1. Claims-based authentication and WS-Federation
        2. Implementing an IP/STS with WIF
          1. Building an STS
          2. Building a relying party
        3. SharePoint trusted IPs
          1. Trusting the IP/STS
            1. Registering the IP and mapping claims
          2. Configuring the target web application
          3. Creating a custom claims provider
        4. Federating with Windows Azure ACS
        5. Understanding OAuth
        6. Configuring server-to-server apps
        7. Summary
    11. A. About the Author
    12. Index
    13. About the Author
    14. Copyright