Book description
SharePoint is gaining recognition as a full-fledged application server with many features and enhancements that specifically allow non-developers to create sophisticated intranet sites. However, with the 2010 release, Microsoft's SharePoint increasingly becomes a compelling development platform. The strong application programming interface (API), its highly extensible nature, and its foundation on the underlying .NET Framework all generate "the perfect storm" to make it one of the most powerful web development platforms available.
However, with power comes complexity. The wide range of usage scenarios make it difficult for developers to grasp the full ability of this next-generation platform. This book takes an in-depth, all-encompassing approach to programming concepts, the extensibility interfaces, and how to embrace SharePoint as a toolkit full of features available to web developers.
Take an in-depth look into the internals of SharePoint.
Create sophisticated applications using SharePoint controls and databases.
Understand the API and use in conjunction with ASP.NET to extend SharePoint.
SharePoint is more than a portal and more than an intranet. Harness its capabilities and put it to work for you.
Table of contents
- Copyright
- About the Authors
- About the Technical Reviewer
- Acknowledgments
-
Introduction
- What Does This Book Cover?
- Conventions Used in This Book
- Who Is This Book For?
- Prerequisites
- How This Book Is Organized
- Support
- Welcome to SharePoint Development
-
1. Basic Tasks
-
1. Developer Basics
-
1.1.
- 1.1.1. Before You Start
- 1.1.2. Setting Up a Development Environment for SharePoint
- 1.1.3. SharePoint's Developer Support at a Glance
-
1.1.4. Introducing Visual Studio 2010's SharePoint Support
-
1.1.4.1. Visual Studio 2010
- 1.1.4.1.1. Preparing Visual Studio
- 1.1.4.1.2. The SharePoint Development Templates
- 1.1.4.1.3. Adding Items to a Project
- 1.1.4.1.4. Investigating a Package
- 1.1.4.1.5. The Feature Designer
- 1.1.4.1.6. Working with SharePoint Designer Workflows
- 1.1.4.1.7. Importing Packages
- 1.1.4.1.8. Creating a Package
- 1.1.4.1.9. Building and Deploying
- 1.1.4.2. SharePoint Designer 2010 vs. Visual Studio 2010
-
1.1.4.1. Visual Studio 2010
-
1.1.5. SharePoint Designer 2010 for Professional Developers
- 1.1.5.1. Installation Hints
-
1.1.5.2. Features at a Glance
- 1.1.5.2.1. SharePoint Designer Rights
- 1.1.5.2.2. New Dashboard Interface
- 1.1.5.2.3. Simplified Object Creation
- 1.1.5.2.4. Easy Use of Content Types
- 1.1.5.2.5. Resource Management
- 1.1.5.2.6. XSLT Views
- 1.1.5.2.7. Accessing Data Sources
- 1.1.5.2.8. Managing Business Data Connectivity Services
- 1.1.5.2.9. Managing Workflows
- 1.1.5.2.10. Master and Site Pages
- 1.1.6. SharePoint as a Development Toolkit and Framework
- 1.1.7. Handling 64-Bit Quirks
- 1.1.8. Summary
-
1.1.
-
2. Architecture
-
2.1.
- 2.1.1. The Architectural View
- 2.1.2. The Technical Integration
- 2.1.3. The Foundation's Object Model
- 2.1.4. The Administrative Object Model
- 2.1.5. Summary
-
2.1.
-
3. Accessing the API
-
3.1.
- 3.1.1. Finding the Entry Points
- 3.1.2. Utilities, Helper Classes, and Support Classes
- 3.1.3. Object Disposal Issues
- 3.1.4. SharePoint Security: Users and Roles
- 3.1.5. The Isolated Programming Style
- 3.1.6. Summary
-
3.1.
-
4. Data Access
-
4.1.
-
4.1.1. Organizing Data in Lists
- 4.1.1.1. Lists and Their Elements
-
4.1.1.2. Working with Lists
- 4.1.1.2.1. The Built-in Lists
- 4.1.1.2.2. Creating a List Programmatically
- 4.1.1.2.3. Adding Fields to the List
- 4.1.1.2.4. Changing Field Properties
- 4.1.1.2.5. Enumerating the Fields Collection
- 4.1.1.2.6. Adding Items to the List
- 4.1.1.2.7. Working with Collections
- 4.1.1.2.8. Working with Attachments
- 4.1.1.2.9. Handle Huge Lists
- 4.1.1.3. Define and Use Views
- 4.1.1.4. Custom Field Types
- 4.1.1.5. Content Types
- 4.1.1.6. Item- and List-Level Event Receivers
- 4.1.1.7. Developing and Deploying an Event Receiver
- 4.1.2. Document Libraries and Document Sets
- 4.1.3. Query Data Using CAML and LINQ
- 4.1.4. Query Data Using CAML
- 4.1.5. Understanding LINQ
- 4.1.6. Summary
-
4.1.1. Organizing Data in Lists
-
4.1.
-
5. External Data Access
- 5.1. Introducing External Data Access
- 5.2. Query Data Using Data Services
- 5.3. External Data: Business Connectivity Services
- 5.4. Highly Efficient Data Access
- 5.5. Summary
-
6. Web Parts
-
6.1.
- 6.1.1. Fundamentals
- 6.1.2. Understanding ASP.NET Web Parts
- 6.1.3. Advanced Web Part Development
- 6.1.4. Connectable Web Parts
- 6.1.5. Creating Private Actions Using Verbs
- 6.1.6. Asynchronous Web Parts
-
6.1.7. Best Practices for Developing Web Parts for SharePoint
-
6.1.7.1. Avoiding Error-Prone Web Parts
- 6.1.7.1.1. Handling All Exceptions to Prevent Web Part Page Failures
- 6.1.7.1.2. Checking Permissions Before Rendering Your Web Part
- 6.1.7.1.3. Validating Properties Before Saving Changes to the Database
- 6.1.7.1.4. Specifying Custom Error Messages When Appropriate
- 6.1.7.1.5. Validating All User Input
- 6.1.7.2. Optimizing Performance
-
6.1.7.3. Supporting the End User
- 6.1.7.3.1. Specifying Whether Web Part Properties Can Be Exported
- 6.1.7.3.2. Supporting SharePoint Designer and the Visual Studio Design-Time Experience
- 6.1.7.3.3. Making Properties User-Friendly in the Tool Pane
- 6.1.7.3.4. Encoding All User Input Rendered to the Client
- 6.1.7.3.5. Checking Web Part Zone Properties Whenever You Attempt to Save Changes
- 6.1.7.3.6. Using Simple Types for Custom Properties You Define
- 6.1.7.3.7. Making Properties Independent of Each Other If They Both Appear in the Tool Pane
- 6.1.7.3.8. Making Web Parts Easily Searchable in the Galleries
- 6.1.7.3.9. Providing a Preview of Your Web Part for the Web Part Gallery
- 6.1.7.3.10. Localizing Your Custom Properties
- 6.1.7.3.11. Supporting Anonymous Access
- 6.1.7.3.12. Help Using Resources
-
6.1.7.1. Avoiding Error-Prone Web Parts
- 6.1.8. Summary
-
6.1.
-
7. Templates
- 7.1. Templates Overview
- 7.2. Column Templates
- 7.3. List Templates
- 7.4. Site Templates
- 7.5. Summary
-
8. Application Techniques
-
8.1.
- 8.1.1. Application Pages
- 8.1.2. Resources and Localization
- 8.1.3. The Event Model
- 8.1.4. Sending E-mail
- 8.1.5. Custom Helper Classes
- 8.1.6. Summary
-
8.1.
-
9. Solution Deployment
-
9.1.
- 9.1.1. SharePoint Features
- 9.1.2. Solution Packages
- 9.1.3. Sandboxed Solutions
- 9.1.4. Deploying Solution Packages Using PowerShell Cmdlets
- 9.1.5. Deploying Solution Packages Using stsadm
- 9.1.6. Creating a Solution Package Step by Step
-
9.1.7. How To: Creating a Solution Package Using Visual Studio 2010
- 9.1.7.1. Using the Project Templates
- 9.1.7.2. Site and Security Level for Debugging
- 9.1.7.3. Adding SharePoint Items and Features to Your Project
- 9.1.7.4. Editing Your Features
- 9.1.7.5. Editing Your Solution Package
- 9.1.7.6. Project Properties and Deployment Configuration
- 9.1.7.7. Debugging the Solution
- 9.1.7.8. Packaging the Solution
- 9.1.8. How To: Creating a Sandboxed Solution Using Visual Studio 2010
- 9.1.9. Upgrading Custom Developed Solutions to SharePoint 2010
- 9.1.10. Summary
-
9.1.
-
1. Developer Basics
-
2. User Interface
-
10. Extending the User Interface
-
10.1.
- 10.1.1. Master Pages
- 10.1.2. Navigation
- 10.1.3. Themes
- 10.1.4. Extending the UI
- 10.1.5. Summary
-
10.1.
-
11. Using Web Controls
-
11.1.
- 11.1.1. Overview
- 11.1.2. Field Controls
- 11.1.3. Input Form Controls
- 11.1.4. Pickers and Selector Controls
-
11.1.5. Toolbar and Ribbon Controls
- 11.1.5.1. Toolbar Control
- 11.1.5.2. Ribbon Control
-
11.1.5.3. Customizing the Ribbon
- 11.1.5.3.1. Prerequisites for a Custom Ribbon
- 11.1.5.3.2. Creating a Feature with a Ribbon Definition
- 11.1.5.3.3. Creating an Application Page and Displaying the Ribbon Bar
- 11.1.5.3.4. Creating Client-Side JavaScript Code for a PageComponent Implementation
- 11.1.5.3.5. Implementing Server-Side Event Handlers
- 11.1.6. Data Controls
- 11.1.7. Summary
-
11.1.
-
12. Client Programming
-
12.1.
- 12.1.1. Understanding the Client Object Model
- 12.1.2. Using the Dialog Framework
- 12.1.3. Working with Status Information and Notifications
- 12.1.4. Development Best Practices
-
12.1.5. Programming Examples
- 12.1.5.1. Common Pitfalls
- 12.1.5.2. Accessing Webs and Sites
- 12.1.5.3. Accessing Lists
- 12.1.5.4. Accessing List Items
-
12.1.5.5. Accessing Users and Roles
- 12.1.5.5.1. How to Add Users to a SharePoint Group
- 12.1.5.5.2. How to Retrieve Members of a SharePoint Group
- 12.1.5.5.3. How to Create a Role
- 12.1.5.5.4. How to Add Users or Groups to Roles
- 12.1.5.5.5. How to Create a New SharePoint Group and Assign the Group to a Role
- 12.1.5.5.6. How to Break the Role Inheritance
- 12.1.5.6. Accessing Web Parts
- 12.1.5.7. Advanced Examples
- 12.1.6. Summary
-
12.1.
-
13. Integrating Silverlight
-
13.1.
- 13.1.1. Introducing Silverlight
- 13.1.2. Silverlight Hosting and Distribution
- 13.1.3. Accessing SharePoint Data
- 13.1.4. Summary
-
13.1.
-
14. Integrating Charts and Maps
-
14.1.
- 14.1.1. Data Access Scenarios
- 14.1.2. Integrating Charts
- 14.1.3. Integrating Map Services
- 14.1.4. Summary
-
14.1.
-
10. Extending the User Interface
-
3. Advanced Techniques
-
15. Forms Services and InfoPath
- 15.1. Internals of InfoPath Forms
- 15.2. Designing Browser-Enabled Form Templates
- 15.3. Deploying InfoPath Forms to SharePoint
- 15.4. Programming InfoPath Forms
- 15.5. InfoPath Forms Services
- 15.6. Summary
-
16. Workflows
- 16.1. Workflows in SharePoint
- 16.2. Workflows with SharePoint Designer
- 16.3. Custom Workflows with Visual Studio
- 16.4. Summary
- 17. Administrative Tasks
- 18. Enterprise Features
-
15. Forms Services and InfoPath
Product information
- Title: SharePoint 2010 as a Development Platform
- Author(s):
- Release date: July 2010
- Publisher(s): Apress
- ISBN: 9781430227069
You might also like
video
Introduction to ChatGPT and OpenAI
OpenAI ChatGPT is a powerful language model that uses advanced ML techniques to generate human-like text …
video
Full Stack Web Development Mastery Course - Novice to Expert
Full stack development refers to the development of both frontend (client-side) and backend (server-side) portions of …
book
Microsoft® Word 2007 Bible
Microsoft’s Word 2007 rewrites the book on word processing and this book helps you soar over …
video
Complete Python Course with 10 Real-World Projects
Python is a multi-paradigm programming language with object-oriented and structured programming fully supported, and many features …