More than simply a portal, SharePoint is Microsoft's popular content management solution for building intranets and websites 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 a team of SharePoint experts, this new edition 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.
- Keeps you thoroughly up to date on all the most recent changes to SharePoint 2010
- Reveals broad and deep coverage of social media features, content management applications, enterprise search, business connectivity services, user experience development, and custom workflow
- Examines SharePoint Server 2010 vs. SharePoint Foundation Server
- Highlights ways you can take advantage of improvements to offline and mobile client capabilities, improvements to SQL Server table support, Cloud-based offerings with Azure integration, social networking additions, and more
Professional SharePoint 2010 Development, Second Edition presents you with authoritative coverage on all aspects of development for the SharePoint platform.
More than simply a portal, SharePoint is Microsoft's popular content management solution for building intranets and websites 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 a team of SharePoint experts, this new edition 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.
- Keeps you thoroughly up to date on all the most recent changes to SharePoint 2010
- Reveals broad and deep coverage of social media features, content management applications, enterprise search, business connectivity services, user experience development, and custom workflow
- Examines SharePoint Server 2010 vs. SharePoint Foundation Server
- Highlights ways you can take advantage of improvements to offline and mobile client capabilities, improvements to SQL Server table support, Cloud-based offerings with Azure integration, social networking additions, and more
Professional SharePoint 2010 Development, Second Edition presents you with authoritative coverage on all aspects of development for the SharePoint platform.

Professional SharePoint 2010 Development
840
Professional SharePoint 2010 Development
840Available on Compatible NOOK devices, the free NOOK App and in My Digital Library.
Related collections and offers
Overview
More than simply a portal, SharePoint is Microsoft's popular content management solution for building intranets and websites 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 a team of SharePoint experts, this new edition 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.
- Keeps you thoroughly up to date on all the most recent changes to SharePoint 2010
- Reveals broad and deep coverage of social media features, content management applications, enterprise search, business connectivity services, user experience development, and custom workflow
- Examines SharePoint Server 2010 vs. SharePoint Foundation Server
- Highlights ways you can take advantage of improvements to offline and mobile client capabilities, improvements to SQL Server table support, Cloud-based offerings with Azure integration, social networking additions, and more
Professional SharePoint 2010 Development, Second Edition presents you with authoritative coverage on all aspects of development for the SharePoint platform.
Product Details
ISBN-13: | 9781118238684 |
---|---|
Publisher: | Wiley |
Publication date: | 03/06/2012 |
Sold by: | JOHN WILEY & SONS |
Format: | eBook |
Pages: | 840 |
File size: | 63 MB |
Note: | This product may take a few minutes to download. |
About the Author
Tom Rizzo is a director in the Microsoft Cloud Solutions product management team.
Reza Alirezaei is the president of Development Horizon, author of technical papers and books, Microsoft SharePoint MVP, and frequent speaker at SharePoint conferences.
Paul J. Swider is an international speaker, trainer, consultant, and the founder of the Charleston SharePoint Users Group and a founder of the nonprofit organization, Sharing the Point.
Kenneth Schaefer is an independent developer and designer focusing on SharePoint and web-based solutions.
Jeff Fried is the CTO of BA Insight, holds 15 patents, and is the author of 50 technical papers.
Scot Hillier is an independent consultant, Microsoft MVP, and author.
Read an Excerpt
Professional SharePoint 2010 Development
By Tom Rizzo Reza Alirezaei Jeff Fried Paul Swider Scot Hillier Kenneth Schaefer
John Wiley & Sons
Copyright © 2010 John Wiley & Sons, LtdAll right reserved.
ISBN: 978-0-470-52942-3
Chapter One
Introduction to SharePoint 2010
WHAT'S IN THIS CHAPTER?
* Information about tools to integrate with Silverlight, LINQ, and BCS
* New features in social computing
* New features in ECM
Microsoft SharePoint Server 2010 introduces a lot of new functionality that you need to understand in order to write better applications on the platform. Beyond increasing the new features in each of the SharePoint workloads, such as collaboration or portal, Microsoft has added entirely new products to the SharePoint family, including the acquired FAST technologies for Enterprise Search and the PerformancePoint services that enhance SharePoint's business intelligence (BI) capabilities. With these new additions, the surface area of SharePoint has doubled, so this chapter will quickly introduce the new set of features in both SharePoint and the Office client.
WHAT'S NEW IN THE SHAREPOINT PLATFORM AND TOOLS
SharePoint, as a development platform, has matured over time from server APIs to web services to now supporting the latest developer technologies, such as Silverlight, LINQ, and REST APIs. Developers who build on the SharePoint platform will find some very welcome additions to the platform, which users have been requesting for a number of years, such as the ability to develop and test on client operating systems, including Windows Vista and Windows 7. You no longer need to do remote development or run a virtual server OS on your client machine to develop on SharePoint. Let's look at the top new enhancements in the platform that you can build against.
Language Integrated Query (LINQ)
In the 2008 release of Visual Studio and .NET 3.5, Microsoft introduced new technology and semantics that allow developers to write against objects that map back to a number of different datasources, even if those datasources do not store the data using object storage. Effectively, LINQ is an object mapper with special operators in the .NET languages. Therefore, you can take a relational database table, use Visual Studio to map the database to your objects, and then write to your objects. For LINQ to work, you need a provider that takes the object calls and translates them into the correct native calls of the underlying datasource, such as SQL queries for databases. With SharePoint 2010, a new LINQ provider for SharePoint converts object operations into the correct SharePoint operations using the native CAML language that SharePoint understands.
List Enhancements
Lists are a critical part of the SharePoint platform. In fact, everything in SharePoint is powered by lists, whether it's a built-in application or your own custom application. With the 2010 release, lists have new, long-awaited functionality, including new scale limits, XSLT views for better customization, list relationships that allow cascade deletes and updates to work, and formula validation for columns in a list. There is also a new list type called the External Data List. This type of list allows you to surface external data, such as database or web service data, inside SharePoint with read/write capabilities. You'll learn more about this new type of list later in the book.
Business Connectivity Services
Business Connectivity Services (BCS) is the new name for the Business Data Catalog technologies from SharePoint 2007. BCS is greatly enhanced in the 2010 release with read/write capabilities, support for Windows Communication Foundation (WCF), and new client capabilities so that you have APIs both on the server and client, and can sync Line-of-Business (LOB) data from your backend systems to the client cache and work on that LOB data when offline. BCS will synchronize the data from the client with the server when you can reconnect. As part of the tooling, SharePoint Designer and Visual Studio include entity-modeling tools for BCS so that you can create business objects that connect to your LOB datasources from within these tools, and write your business logic for reading and writing your LOB data.
Silverlight Integration
If you are using SharePoint 2007, one of the biggest challenges is trying to get Silverlight to work in a SharePoint environment. You have to modify your web.config, hack around to deploy your Silverlight application to a content viewer web part, and then hope you don't need to debug the application. Silverlight shipped after SharePoint 2007, which made it difficult for the SharePoint team to foresee the requirements of being a great Silverlight host. With the 2010 release, SharePoint has become that great Silverlight host. Built into SharePoint is a Silverlight web part; you can drag and drop this web part onto your page, point it to your Silverlight application, and start using the Silverlight application in your SharePoint environment in minutes.
Client-Side OM
Frequently, developers want to write applications that need to talk to SharePoint from a client operating system and from client applications, such as the ones in the Office suite. With the addition of Silverlight integration to SharePoint, a client object model is critical because it makes it easier for developers to write applications against a full object model, rather than trying to call web services from within their client applications. Additionally, because Silverlight runs on the client rather than running server-side, the client Object Model (OM) makes it easier for developers to build rich Silverlight applications on SharePoint. SharePoint 2007 requires you to write against untyped web services for remoting your applications. The client object model provides a more productive development experience since it provides a typesafe environment that works with the Intellisense in Visual Studio.
Web 2.0 Protocols and New Standards
There are a number of new protocols and standards that SharePoint 2010 implements across its workloads. Some are considered "Web 2.0" protocols, such as Representational State Transfer (REST), Asynchronous JavaScript + XML (AJAX), JavaScript Object Notation (JSON) and ATOMSub/Pub, while others are going through standards validation, such as the Content Management Interoperability Services (CMIS). SharePoint still continues to support other standards such as WebDAV and web services. Adding these newer protocols and standards allows SharePoint to interoperate with other systems more easily, whether it is to create mash-ups between systems hosted in SharePoint or to allow data interoperability between systems.
Sandbox Solutions and Resource Governors
One of the biggest downsides to developing custom solutions in SharePoint 2007 is the requirement for the solution developer to be an administrator on the server. Often, IT administrators will not allow developers to access the server with the elevated privileges they need to deploy their solution, as custom web parts or other SharePoint solutions require that you place your code in the global assembly cache (GAC) or in the file system related to your SharePoint site. Plus, the administrator has no simple way to ensure that badly written code does not slow down the system, crash it, or perform malicious activities. You could implement code access security (CAS), but that requires the developer to write the code to implement it; in addition, managing CAS policies is not a simple task.
However, with SharePoint 2010, there is a new feature called Sandbox Solutions that allows for the deployment of SharePoint solutions inside a secure environment hosted in SharePoint. Because it is a secure environment, the IT administrator can control who can deploy solutions and how many resources these solutions receive through the new resource governors built into the system. For example, if a custom-developed solution is using too many CPU resources, SharePoint will automatically stop running the solution. That said, today the Sandbox Solution offers only a subset of the SharePoint object model, so while it might be a good solution for some custom applications, you will have to evaluate if there is enough functionality to meet your application needs.
SharePoint Designer
Besides making SharePoint Designer (SPD) free, Microsoft has invested in making SharePoint Designer better in the 2010 release. SPD has been redesigned to have more of a SharePoint-based view than the folder-based view it previously had. Now, you can browse by the types of items you are looking for rather than just through the site hierarchy. In addition, SPD introduces a new entity modeler to make it easier for you to build BCS connections to your backend systems and model the backend data inside of the SharePoint entity system. Finally, SPD has enhanced the workflow design capabilities that import Visio diagrams into SPD and allow you to add business logic to those diagrams using the SPD Workflow Designer, and then display the graphical status of your workflow overlaid on those diagrams as part of your workflow.
SPD 2010 will continue to be a free product, which makes it an invaluable tool for any SharePoint developer, even if you just use it as a simple web design or SharePoint debugging tool.
Visio and Access Services
Two new web companions are available in SharePoint 2010, Visio Services and Access Services, in addition to the previous web companions - Excel Services and InfoPath Form Services. With Visio Services, you can design your Visio diagrams, connect those diagrams to backend systems for visualization of data, and then post those diagrams to SharePoint. SharePoint will render your diagram, with the data connectivity, through the SharePoint web experience.
Please note that the Visio web rendering is read-only, and to get the Visio Services functionality, you need a high-end version of Visio called Visio Ultimate. (Incidentally, this product is not part of the Office Ultimate suite.)
With Access Services, you can convert your Access applications to web-based applications. With the previous version of Access, Access 2007, you could take certain Access databases that were compatible with SharePoint's logical data model and export that data to SharePoint but still manipulate it from within Access. With the new capabilities that Access Services provides, you can take your Access forms and move them over to web-based forms to complete the transformation of your application.
InfoPath (Forms, List Forms, Mobile Forms)
InfoPath Form Services has a number of new enhancements, including the ability to replace list item forms for activities such as editing properties on an item. This makes it easier to build richer forms with business logic and data connectivity that work in the rich client through the new SharePoint Workspace (formerly Groove), which is covered later in this chapter, and in the browser. In addition, InfoPath Forms Services adds new mobile form capabilities that let you create forms that run across mobile devices, browsers, and Office clients.
Visual Studio
With Visual Studio (VS) 2010, there is a major jump ahead for SharePoint developers. Previously, VS did not have much SharePoint development functionality and you had to download the community-supported Visual Studio Extensions for Windows SharePoint Services. With VS 2010, you can browse your SharePoint environment from the Server Explorer to quickly see your lists, libraries, content types, workflows, and other SharePoint artifacts. A visual Web Part Designer frees you from having to hand code HTML to add visual elements to your web parts. An entity modeling tool works with the BCS technologies that were discussed earlier so that you can model your business entities, write your business logic, and connect SharePoint to your backend systems. Finally, VS integrates SharePoint development into a team development environment with support for Team Foundation Server and easy deployment using the new Web Solution Package format, which is discussed next.
Web Solution Packages
To make it easier to package and deploy solutions, SharePoint 2010 improves the Web Solution Package (WSP) format so that it is supported across all tools, allowing you to export your site through the browser, SharePoint Designer, and Visual Studio. This means that you can quickly upgrade or downgrade your solutions between the tools, depending on the person working on the solution or the tool required to build the solution. In addition, SharePoint Online, the Microsoft-hosted version of SharePoint, supports this format so that you can move solutions from on-premises to the cloud without having to change formats or rework the package.
Developer Dashboard
One of most common culprits of poorly performing SharePoint sites is poorly performing code, whether the problem is bad .NET code, bad database calls the .NET code makes, or coding errors that cause excessive CPU, disk, or memory utilization. Tracking down and figuring out where the issues are in the code was a laborious process in the 2007 release. SharePoint 2010 introduces a new developer dashboard that allows you to see all the calls made on a page right inside of the user interface. Those calls can be ones that SharePoint is making or they can be your custom code. By looking at the call stack, response times, and utilization, you can quickly uncover where your code is performing poorly and try to fix it.
WHAT'S NEW IN COLLABORATION/SOCIAL COMPUTING
Collaboration and social computing are two of the fastest changing technologies in the industry. Looking back just a few years, you'll note a number of technologies in this space did not exist, such as social tagging, microblogging, and the APIs that support these technologies. SharePoint 2010 adds new capabilities in these areas, but this space is not done innovating, so at some point you may have to build your own social capabilities on top of SharePoint 2010 to take advantage of future technology advances in this area.
Enhanced Blogs and Wikis
SharePoint 2007 introduced blog and wiki capabilities to the SharePoint product. The most interesting piece of the blog and wiki capability was the integration with the rest of the SharePoint functionality for versioning and content approval. Unfortunately, blogs and wikis were a late addition to the 2007 product, so not all of the desired functionality made it into the final release. In the 2010 product, blogs and wikis are enhanced to add new capabilities to the core blog and wiki functionality. Also, these applications can take better advantage of new 2010 capabilities, such as content rating, tagging, and feeds. In addition, records management can now be applied to blogs and wikis just like any other content in SharePoint so that you can have compliance and governance on your blog and wiki content. Finally, SharePoint also introduces enterprise wikis, which combine the content publishing and social features to provide a more robust wiki solution that has capabilities such as ratings of wiki pages.
Social Tagging and Ratings
One phenomenon on the Internet is social tagging and content rating. If you have ever used Delicious or Digg, then you've used a social tagging technology where you can search, sort, and filter by tag, track what other people are tagging, and obtain feeds on your tags related to your areas of interest. Combined with tagging, ratings help you understand the value of the content and can help filter out poor content based on other people's ratings. Both of these features are implemented in the 2010 release so that you can tag anything in SharePoint, whether it's content or people. Plus, you can rate all of your content, so if you want to find all Word documents rated with four or more stars, you can quickly search your site to find this information. There is a blurring of the line between social and Enterprise Content Management (ECM) areas, as you will see throughout this book. The two areas are converging, with social being the bottom-up technology driven by users and ECM being the top-down technology that helps with compliance in your social environment. Many of the features are shared between the two technological areas, especially tagging, where the social tag infrastructure, called folksonomies, are actually open term sets in a corporate taxonomy. Finally, as everyone always asks about this in regard to 2007: yes, SharePoint 2010 does ship with a Tag Cloud web part.
(Continues...)
Excerpted from Professional SharePoint 2010 Development by Tom Rizzo Reza Alirezaei Jeff Fried Paul Swider Scot Hillier Kenneth Schaefer Copyright © 2010 by John Wiley & Sons, Ltd. Excerpted by permission.
All rights reserved. No part of this excerpt may be reproduced or reprinted without permission in writing from the publisher.
Excerpts are provided by Dial-A-Book Inc. solely for the personal use of visitors to this web site.
Table of Contents
INTRODUCTION xxvCHAPTER 1: INTRODUCTION TO SHAREPOINT 2010 1
What’s New in the SharePoint Platform and Tools 1
Language Integrated Query 2
List Enhancements 2
Business Connectivity Services 2
Silverlight Integration 2
Client-Side OM 3
Web 2.0 Protocols and New Standards 3
Sandbox Solutions and Resource Governors 3
SharePoint Designer 4
Visio and Access Services 4
InfoPath (Forms, List Forms, Mobile Forms) 4
Visual Studio 5
Web Solution Packages 5
Developer Dashboard 5
What’s New in Collaboration/Social Computing 5
Enhanced Blogs and Wikis 6
Social Tagging and Ratings 6
Activity Feeds 6
Social Bookmarking 6
Organization Browser 7
Outlook Social Newsfeeds and Expertise 7
Mobile Client 7
Social Search 7
What’s New in Search 7
New Core Search Query Capabilities 8
Enhanced Core Search Results 8
Enhanced People Search: Phonetics 8
Enhanced People Search: Address Book–Style Lookups 8
Enhanced People Search Results 8
New Search Connector Framework 9
FAST Integration 9
What’s New in Enterprise Content Management 9
Document Management 9
Records Management 11
Web Content Management 12
Digital Asset Management 13
Workflow 14
What’s New in Forms 15
What’s New in Groove (SharePoint Workspace) 15
What’s New in Cloud Services 15
Summary 16
CHAPTER 2: DEVELOPER TOOLS FOR SHAREPOINT 2010 17
OOB Developer Experience 18
Understanding SharePoint Designer 2010 21
New User Interface 22
Top Ten New Features in SPD 22
Understanding Visual Studio 2010 Tools 34
Importing WSPs 34
SharePoint Server Explorer 34
Solution Explorer Integration 35
Feature Designer 35
Package Designer and Explorer 36
Project Type Templates 37
Mapping Folders 39
Setting Up Your Development Environment 40
System Requirements 40
Troubleshooting with Debugging and Testing 42
F5 Debugging 42
Debugging Using the Developer Dashboard 44
Debugging Using SharePoint Logs 48
Debugging Silverlight Code 49
Unit, Capacity, and Load Testing 49
Other Useful Tools for Debugging and Testing 52
Deploying and Maintaining Your Code 53
Customizing Deployment in VS 54
ALM with VS 2010 and SharePoint 54
New in VS 2010 Service Pack 1: IntelliTrace and Unit Testing 54
Moving from Test to Production 59
Upgrading Code from 2007 59
Summary 62
CHAPTER 3: IT PRO ENHANCEMENTS FOR THE DEVELOPER 63
Performance Improvements 63
List Throttling 64
External List Throttling 67
HTTP Request Throttling 69
Remote Blob Storage 71
Streaming Media and Bit Rate Throttling 71
High-Availability Improvements 72
Database Mirroring and Clustering 72
Read-Only Databases 73
Security Improvements in SharePoint 2010 74
Claims-Based Authentication 74
Code Access Security 77
Sandbox Solutions 77
Cross-Site Scripting 79
Management Improvements 79
Health Monitoring and Reports 79
Service Applications 80
PowerShell Support 82
Summary 84
CHAPTER 4: SHAREPOINT PLATFORM 85
Platform Overview 85
New User Interface 86
General Platform Improvements 87
Master Pages and _Layouts 87
The Ribbon 89
Status Bar and Notification Area 110
Working with Dialogs 114
Theming Infrastructure 117
List, View, and Event Enhancements 122
List Enhancements 122
View Enhancements 128
Events Enhancements 130
Overview of Data Technologies 136
SharePoint LINQ Support 136
Managed Client OM 146
jQuery and SharePoint 168
Timer Service Applications 172
Sandbox Solutions 175
Types of Solutions You Can Build 176
Executing Code in the Sandbox 176
Solution Monitoring 179
Managing Solutions 182
Mobile Solutions 188
Writing a SharePoint Mobile Adapter 188
Safe Controls and Editing the Compat.Browser File 193
Creating a Windows Phone 7 Application 195
Summary 206
CHAPTER 5: COLLABORATION AND SOCIAL COMPUTING 207
People-Centricity 208
User Profile Service Application 208
Profile Synchronization 212
Social Networking and My Site 221
Social Tagging and Ratings 223
Blogs and Wiki Site Definitions 228
Summary 231
CHAPTER 6: SEARCH 233
Search Options with SharePoint 2010 234
SharePoint Foundation 236
Search Server 2010 Express 236
Search Server 2010 237
SharePoint Server 2010 237
FAST Search Server 2010 for SharePoint 238
Choosing the Right Search Product 239
Common Platform and APIs 240
Search User Experience 241
Search Center 242
Visual Cues in Search Results 244
“Conversational” Search 246
People Search 248
Search Architecture and Topologies 249
SharePoint Search Key Components 249
FAST Architecture and Topology 253
Scale Out with FAST 254
How Architecture Meets Applications 258
Developing with Enterprise Search 258
Range of Customization 259
Top Customization Scenarios 260
Search-Driven Applications 260
Customizing the Search User Experience 261
Example: New Core Results Web Part 262
Example: Adding Sorting to Your New Web Part 264
Web Parts with FAST 266
Search Connectors and Searching LOB Systems 267
Using Out-of-Box Connectors 267
Creating Indexing Connectors 269
Deploying Connectors 272
Summary — Customizing Connectivity 274
Working with Federation 274
Customization Examples Using Federation 276
Further Considerations in Federation 277
Working with the Query OM 278
Query-Side APIs and OMs 278
Query Syntax 281
FAST Query Language (FQL) 282
Examples Using Query Customization 282
Social Search 286
End-User-Visible Functionality 286
Social Search Architecture 287
Content Enhancement 288
Metadata, Linguistics, and Search 288
Advanced Content Processing with FAST 290
Multilingual Search 292
Extending Search Using the Administrative OM 292
Authentication and Security 292
Search Reports 293
Combining Search with Other Workloads 293
Search and Content 293
Search and Insights 294
Search and Composites 296
Search and Communities 297
Combining Search with Other Features 297
Search and the Cloud 298
Search Capabilities in Office 365 298
Combining On-premises and In-cloud Content with Search 300
Summary 301
CHAPTER 7: RECORDS MANAGEMENT 303
SharePoint 2010 Records Management Overview 303
Recordization 304
eDiscovery and Holds 308
Auditing and Reporting 308
Programming RM in SharePoint 309
Declaring and Undeclaring a Record 309
Creating Retention Schedules 311
Creating Organizer Rules 318
Creating Workflows that Use RM 323
Summary 325
CHAPTER 8: WEB CONTENT MANAGEMENT 327
The Content Lifecycle in Web Content Management 327
Separation of Content and Development 329
The Important Role of Information Architecture 329
Foundations of Web Content Management 330
Activating the Publishing Features 330
Publishing Feature Components 330
Page Processing Model 331
Site Variations 332
Preparing for Variations 332
Creating Variations 333
Site Columns 337
Browser-Based Site Column Development 337
Feature-Based Site Column Development 338
Object Model–Based Site Column Development 343
Content Types 345
Understanding Content Type IDs 345
Browser-Based Content Type Development 347
Feature-Based Content Type Development 347
Object Model–Based Content Type Development 350
Client Object Model–Based Content Type Development 352
Page Layouts 354
Developing Page Layouts 355
Creating a Page Layout with SharePoint Designer 355
Create a Page Layout with Visual Studio 357
Master Pages 361
Creating a Master Page with SharePoint Designer 362
Creating a Master Page with Visual Studio 363
Setting the Master Page in Code 365
Navigation 366
Customizing Navigation with Site Settings 366
Implementing Navigation in the Master Page 369
Customizing Navigation Using the Object Model 370
Customizing Navigation with Web Parts 372
Content by Query Web Part 374
Using the Content by Query Web Part 375
Customizing Content by Query Web Part in XML 376
Using Custom XSL to Modify the Presentation of Content 379
Redeploying the Content by Query Web Part Using Visual Studio 384
Content Conversion 386
Setting Up Document Conversion 386
Using Document Conversion 387
Summary 388
CHAPTER 9: ELECTRONIC FORMS 389
Introducing the Training Management Application 391
Customizing SharePoint List Forms 392
Creating the Trainings List 393
Customizing SharePoint List Forms 394
Adding Intelligence Using Rules and Views 396
Publishing List Forms 398
Distributing the Trainings List 402
Designing InfoPath Form Templates 402
What Is a Form Library? 403
Designing Your Form Template 404
Querying SharePoint Lists in Forms 409
Querying REST Web Services 411
Submit Behavior 414
Form Programming 416
Publishing an InfoPath Form 424
Publishing to a Form Library vs. Publishing to a Content Type 427
Form Security 429
Sandboxing Your Forms 430
Form Anatomy 431
Extracting the Form’s Data 436
Tools for Form Developers 443
The Rule Inspector 444
The Design Checker 445
IE Developer Tools 446
Fiddler Tool 447
Tiny Inline Tools 448
Building Web Parts Using InfoPath 450
InfoPath Form Web Part 450
Using InfoPath to Create Connected Web Parts 451
Getting Data from Other Web Parts 455
Empowering Users with Mashups 456
Summary 457
CHAPTER 10: ECM: DOCUMENT MANAGEMENT 459
A New Enterprise Content Mindset 460
New ECM Features 460
Expanded ECM Object Model 461
Getting the Most Out of the Document Center 462
Visual Studio and the Document Center 464
Content Routing 470
Managing the Content Organizer 471
Using Document Libraries in the Document Center 473
Metadata Navigation and Filtering 475
Visual Studio and Document Libraries 476
Managed Metadata 479
Types of Metadata 479
Managed Metadata Service Application 480
Content Types 483
Document ID Service 486
Create a Custom Document ID Provider 486
Summary 489
CHAPTER 11: INTRODUCING BUSINESS CONNECTIVITY SERVICES 491
Introducing Business Connectivity Services 492
Creating Simple BCS Solutions 493
Understanding BCS Architecture 496
Understanding Connectors 497
Understanding Business Data Connectivity 497
Understanding the Secure Store Service 502
Understanding Package Deployment 505
Working with BDC Metadata Models 505
Working with External Datasources 507
Connecting with the SQL Server Connector 508
Connecting with the WCF Service Connector 512
Creating Methods 516
Implementing Method Stereotypes 516
Creating Methods for Databases 520
Creating Methods for Web Services 526
Defi ning Associations 527
Working with External Lists 531
Creating Custom List Actions 531
Creating Custom Forms 532
Summary 533
CHAPTER 12: ADVANCED BUSINESS CONNECTIVITY SERVICES 535
Creating .NET Assembly Connectors 535
Understanding the Project Tooling 536
Walking Through the Development Process 537
Packaging Considerations 554
Enabling Search Support 556
Working with the BDC Server Runtime Object Model 559
Connecting to the Metadata Catalog 561
Retrieving Model Elements 562
Executing Operations 563
Summary 575
CHAPTER 13: WORKFLOW 577
Training Approval Workflow 578
Creating the Training Content Type 579
Workfl ow Development Lifecycle 579
Prototyping in Visio 580
Customizing the Workfl ow in SharePoint Designer 581
Creating Custom Actions with Visual Studio 2010 594
Importing to Visual Studio 2010 604
Building Workflows with Visual Studio 2010 623
Site Workflows 623
Pluggable Workflow Services 640
Tapping into Workflow Events 648
Summary 650
CHAPTER 14: BUSINESS INTELLIGENCE 651
Challenges with Traditional Business Intelligence 651
Integration with SharePoint: The History 652
Highlights of Business Intelligence in SharePoint Server 2010 654
Important BI Terms and Concepts 655
Using the AdventureWorks Sample Databases 656
The Starting Point: Business Intelligence Center 658
Excel Services 660
Excel Services Architecture 662
Office Data Connection 663
Authoring Workbooks in Excel 668
Publishing the Workbook 677
PerformancePoint Services 682
Dashboard versus Scorecard 683
PerformancePoint Services Architecture 683
Introducing Dashboard Designer 686
Creating Your First Dashboard 687
One-Click Publishing to SharePoint 695
Time Intelligence Filtering 698
Reporting Services 2008 R2 701
Integration Modes 701
Local Mode Architecture 702
Connected Mode Architecture 703
Configuring the BI Center 707
BIDS 2008 R2 or Report Builder 3.0? 708
Building and Deploying Reports 709
Caching and Snapshots 725
Reporting on SharePoint Data 733
Claims and BI Solutions 741
Summary 743
CHAPTER 15: SHAREPOINT ONLINE 745
BPOS: SharePoint Online Overview 745
Developing in the Cloud 747
Debugging Your Solutions 747
Example Cloud Scenarios 749
Office 365 Overview 749
Differences Between SharePoint On-Premises and Online 750
What’s in SharePoint Online in Office 365 751
What About Hybrid Solutions? 752
Azure Overview 752
Windows Azure 752
SQL Azure 752
SQL Server Management Studio 753
Windows Azure AppFabric 753
Windows Azure Virtual Network 754
Developer Tools for Windows Azure 754
SharePoint and Azure Integration Scenarios 754
Integrating SQL Azure with SharePoint On-Premises 754
Integrating SQL Azure and SharePoint Online 761
Connecting to On-Premises from SharePoint Online 761
Writing SharePoint Online Applications 762
Identity and Authentication in Office 365 762
Calling the Client Object Model 763
Writing a Sandbox Solution in Office 365 765
Connecting Outside of Office 365 with Silverlight 766
Deploying and Debugging 767
Summary 769
APPENDIX: ADDITIONAL HELP AND RESOURCES 771
INDEX 773