You are on page 1of 13

Contents

Foreword IntroductIon

xxvii xxix

AL

ChaPter 1: Building a PerfeCt test environment for sharePoint server 2010

Getting Ready Windows


What About Windows 7 or Vista? Installing Windows 2008 R2 Setting a Computer Name Making the VM a Domain Controller Configuring Windows

RI TE MA D TE GH PY RI

2 2
3 3 4 5 7

SQL Server
Installing SQL Server 2008 R2

12
12

SharePoint 2010

15
15 25 29

Installing SharePoint 2010 Setting Up Some User Data SQL Server Reporting Services

Other Software Summary About the Author

33 33 34
35

ChaPter 2: uPgrading to sharePoint server 2010 the hyBrid aPProaCh

Understanding the New SharePoint 2010 Upgrade Process System Requirements for a SharePoint 2010 Upgrade SharePoint 2010 Upgrade Improvements
Pre-Upgrade Checker Upgrade Logging Visual Upgrade Database Test cmdlet Expected Downtime Central Administration Status Page Site Access During an Upgrade

CO

36 36 37
38 40 41 44 44 45 46

Dealing with Large Content Databases

46

597132ftoc.indd 13

10/13/10 11:35:28 PM

CONTENTS

Upgrading with Custom Site Definitions Choosing the Right Upgrade Approach
In-Place Upgrade Approach In-Place Upgrade Under the Hood Post In-Place Upgrade Database Attach Upgrade Approach Post Database Attach Upgrade

47 50
50 52 54 58 61

SharePoint 2010 Hybrid Upgrade Approach


Read-Only Databases Hybrid Approach Detach Databases Hybrid Approach

61
62 66

Summary About the Author


ChaPter 3: monitoring sharePoint 2010

68 68
69

ULS Trace Logs


Configuring Log Settings with PowerShell Using Logs to Troubleshoot Methods for Consuming the Trace Logs

69 70
74 77 80

Windows Event Logs Logging Database


Configuring the Logging Database Consuming the Logging Database

85 86
88 90

Health Analyzer
Reviewing Problems Rule Definitions

94
94 97

Timer Jobs
Timer Job Management Timer Job Status

98
98 100

Summary About the Author


ChaPter 4: sharePoint 2010 seCurity under the hood ClaimsBased authentiCation

102 102
105

Introducing the Identity Metasystem Identity in a Claims-Based World The Security Token Service (STS) The Problem with Multiple Identities Claims Impact on Delegation Mapping Technology to Components

106 107 108 110 112 113

xiv

597132ftoc.indd 14

10/13/10 11:35:29 PM

CONTENTS

Active Directory Federation Services (AD FS) Windows Identity Foundation (WIF) CardSpace

113 114 114

Configuration of SharePoint Claims


SharePoints Trusted STS Configuring Claims-Based Authentication Using the AD FS 2.0 STS

114
114 115

Architecture of SharePoint Claims


Internal Enterprise Claims (IEC) Public Cloud Claims (PCC) and the LDAP Provider Enterprise Identity Federation (EIF)

120
120 122 124

Summary About the Author


ChaPter 5: using Powershell with sharePoint 2010

126 127
129

Understanding PowerShell Basics


An Object-Based Scripting Language The Extended Type System The Object Pipeline Formatting Object Data Filtering and Iterating Functions and Scripts

130
131 133 136 138 139 141

Using SharePoint 2010 Cmdlets


Finding What You Need PipeBind Objects Commonly Used Cmdlets Handling Disposable Objects

144
144 146 147 154

Creating Custom Cmdlets


When to Create Custom Cmdlets Common Base Classes Custom PipeBind Objects Packaging and Deploying Using Visual Studio 2010

156
157 157 159 161

Summary About the Author


ChaPter 6: BaCking uP and restoring sharePoint 2010

164 164
165

Operations Planning
Importance of a Disaster Recovery Plan

166
166

Types of Recovery
Content Recovery Disaster Recovery

168
168 169

xv

597132ftoc.indd 15

10/13/10 11:35:29 PM

CONTENTS

Whats New in 2010


Farm Configuration Backup and Recovery Changes to Central Administration PowerShell SQL Database Snapshots Unattached Content Database Recovery List Import and Export Search Recovery Improvements

170
170 171 172 172 173 174 175

Understanding the Types of Backups


Granular Backups Farm Backups

175
176 184

Recovery Scenarios
Item-Level Recovery Site-Collection Recovery Content Database Recovery Farm Disaster Recovery

194
194 197 198 198

Recommendations
Keeping a Change Log Using SharePoint Solutions for Custom Code Other Items to Protect Content Database Sizing Performing Trial Restores Third-Party Solutions

201
201 202 202 203 203 203

Summary About the Author


ChaPter 7: working with sharePoint designer 2010

204 204
205

Evolution of SharePoint Designer Who Should Use SharePoint Designer? Requirements for Using SharePoint Designer 2010 Whats New?
Overview of the New User Experience Restricting Access to SharePoint Designer Branding Views and Forms Workflows Data Sources

205 206 207 208


208 213 217 224 230 239

Using SharePoint Designer Effectively in Your Environment


Managing Sites Workflows

243
243 243

xvi

597132ftoc.indd 16

10/13/10 11:35:29 PM

CONTENTS

Branding Prototyping Development Tasks

244 245

Summary About the Author


ChaPter 8: Building sandBoxed solutions

245 246
247

The Push to No-Code Solutions Understanding the Concept of a Sandboxed Solution


Understanding the Execution of Declarative Code Understanding What You Can and Cant Do

248 249
253 253

Your First Sandbox Project Getting Out of the Sandbox Exploring Alternatives to the Sandbox Understanding When to Use Sandboxed Solutions Summary About the Author
ChaPter 9: sharePoint 2010 weB Parts

255 259 265 266 267 267


269

Web Part History


Historical Perspective Web Part Goals Whats New

270
270 271 274

Web Part Development


Step 1: Prepare Environment Step 2: Create Project Step 3: Add Item Step 4: Configure Feature Step 5: Configure Solution Step 6: Write Code Step 7: Deploy Assets Step 8: Test Solution Step 9: Secure Code Step 10: Deliver Solution

276
277 277 278 278 278 279 279 279 280 280

Web Part Basics


Web Parts Defined Web Part Benchmarks Web Part Framework Web Part Ribbon Web Part Properties Web Part Resources

280
280 281 282 289 293 294

xvii

597132ftoc.indd 17

10/13/10 11:35:29 PM

CONTENTS

Creating a Simple Visual Web Part


Prepare Environment Create Project Add Items Configure Feature Configure Solution Write Code Deploy Assets Test Solution Secure Code Deliver Solution

295
295 295 298 301 302 305 309 312 316 320

Enhancing the Visual Web Part


Write Code Deploy Assets Test Solution

320
320 322 322

Adding an Editor Part


Write Code Deploy Assets Test Solution

323
323 329 329

Adding Web Part Verbs


Write Code Deploy Assets Test Solution

330
331 332 332

Summary About the Author


ChaPter 10: automating Business ProCesses

332 332
335

Using InfoPath and SharePoint Designer Individually


Building Powerful Forms Using InfoPath Using SharePoint Designer to Build Solutions on Top of SharePoint

336
336 344

Combining InfoPath and SharePoint Designer


Creating InfoPath Forms for the Browser Automating Processes Using SharePoint Designer Workflows The Final Product

349
350 360 371

Summary About the Author

373 373

xviii

597132ftoc.indd 18

10/13/10 11:35:29 PM

CONTENTS

ChaPter 11: Building Custom serviCe aPPliCations for the right situations

375

Understanding Services in SharePoint History of Services in SharePoint


SharePoint Portal Server 2003 Office SharePoint Server 2007

376 376
376 377

SharePoint 2010 Service Architecture Framework SharePoint 2010 Service Application Extensibility
What the Service Application Framework Offers Determining Whether or not to Build a Custom Service Application

377 378
379 379

Creating the Wingtip Calculator Service Application


Configuring the Visual Studio 2010 Project Creating the Application Server Components Creating the Web Front End Server Components Creating the Service Consumers

380
381 384 396 401

Summary About the Author


ChaPter 12: managing the sharePoint aPPliCation lifeCyCle

405 405
407

Provisioning with Solution/Feature XML Versus .NET Code Generating Feature XML Using Site Templates Upgrading a SharePoint Application
Feature Upgrade in SharePoint 2010 An Example of Feature Upgrade Upgrading Different Artifacts

408 409 415


415 416 428

Assembly Versioning in a SharePoint Application


Versioning of .NET Assemblies Using the BindingRedirect Element in a WSP Manifest Versioning Strategies in SharePoint Applications

431
431 432 435

ALM and Sandboxed Solutions


Solution Upgrade Model Feature Upgrade Assembly Versioning

437
438 438 438

Summary About the Author


ChaPter 13: using silverlight 4 with sharePoint 2010

438 439
441

The Silverlight News Banner 442 Developing a SharePoint Web Part Hosting a Silverlight Application 453
Adding a Custom Ribbon to the Web Part Changes Made to the Silverlight News Banner 459 464
xix

597132ftoc.indd 19

10/13/10 11:35:29 PM

CONTENTS

Deployment Possibilities and Accessibility Scope Impact Developing a SharePoint Custom Field Type Hosting a Silverlight Application
The Picture Service The Silverlight Picture Picker The PicturePicker Field The News List Definition

465 466
467 470 476 480

Developing a SharePoint Application Page That Hosts Several Communicating Silverlight Applications
The SLNewsItemsListBox Silverlight Application The SLNewsItemDetails Silverlight Application The News Manager Application Page

485
486 495 502

Hosting a Silverlight Application in the Master Page


The Marquee Server Control The Custom Master Page Deploying the Custom Master Page

505
505 507 507

Using Business Connectivity Services


Defining the External Content Type Defining the External List Developing the WCF Service Modifying the News Banner Web Part Modifying the News Banner Silverlight Application

510
510 512 512 515 517

Using Silverlight from within a Sandboxed Solution Summary About the Author
ChaPter 14: Business ConneCtivity serviCes

520 524 524


525

A Brief Look Back Terminology Changes Welcome to SharePoint 2010 Existing BDC Applications During an Upgrade BCS Features Available in SharePoint Foundation
External Lists External Data Column

526 526 527 529 529


529 530

BCS Features Available in SharePoint Server 2010


Business Data Web Parts Search User Profiles Office Client Integration

531
532 532 534 534

Using Tools to Create ECTs


SharePoint Designer 2010

536
536

xx

597132ftoc.indd 20

10/13/10 11:35:29 PM

CONTENTS

Visual Studio 2010 BCS Meta Man

539 548

Developing Against the BCS Object Models Summary About the Author
ChaPter 15: using PerformanCePoint serviCes 2010

548 548 549


551

The Case for Business Intelligence


Why Does a Company Need BI? Asking the Right Questions How Can PerformancePoint Services Help?

552
552 552 553

PerformancePoint Services 2010 Overview


PerformancePoint Services Architecture

553
553

Configuring and Enabling PerformancePoint Services


Configuring the Unattended Service Account Configuring Trusted Locations Enabling PerformancePoint Services on a Site Configuring the Client

555
555 556 557 558

Creating a PPS Dashboard


Creating PPS Content Creating the Workspace Deploying Dashboards and Dashboard Components Securing Dashboards

559
561 561 573 574

About the Author


ChaPter 16: managing metadata with sharePoint server 2010

576
577

Information Architecture Taxonomy and Metadata Taxonomy Versus Folksonomy Metadata and Taxonomy Platform Enhancements
Applying Centrally Stored Metadata Working with the Term Store Management Tool Using the Service Application Understanding Location-Based Metadata Understanding Metadata Navigation Settings Document Sets and Metadata Behavior Using Content Organizers Understanding Content Type Syndication Understanding Social Tagging and Metadata Extending Social Networking

577 578 580 580


581 583 587 590 591 593 595 596 598 599
xxi

597132ftoc.indd 21

10/13/10 11:35:29 PM

CONTENTS

Programmatic Access to the EMM Service


Using the Taxonomy API Remote Access to the Term Store

600
600 603

Summary About the Author


ChaPter 17: understanding sharePoint 2010 searCh

604 604
605

New and Improved SharePoint 2010 Search SharePoint 2010 Search Engines
SharePoint 2010 Search Engine FAST Search Server 2010 Engine

606 608
608 611

Deploying SharePoint 2010 Search


Deploying a New Search Service Application Crawling and Indexing Queries and Results Reports

613
613 615 616 617

Deploying FAST Search Server


Installing FAST Search Server 2010 for SharePoint Deploying FAST Search Service Applications

617
617 619

Using PowerShell Commands Building the Search Architecture


Defining Content Sources Using Scopes Scheduling Crawls Using Search Federation Understanding Keywords and Best Bets User Context in FAST Search Using People Search

620 621
621 624 624 625 627 628 628

Customizing User Interfaces


Understanding Centralized and Decentralized UIs Using Search Centers Using Search Web Parts Customizing the Refinement Panel Integrating the Client

630
630 631 631 632 632

Improving Findability and Searchability


Using Managed Metadata Using Metadata Properties Improving Keywords and Best Bets

633
633 634 635

xxii

597132ftoc.indd 22

10/13/10 11:35:29 PM

CONTENTS

Improving People Search Improving the User Context in FAST Search Understanding SEO and SharePoint 2010

635 635 635

Summary About the Author


ChaPter 18: understanding Branding in sharePoint 2010

636 636
637

Introduction to SharePoint Branding


Comparing SharePoint Foundation 2010 and SharePoint Server 2010 Types of SharePoint Sites How Branding Works in SharePoint Approaches to Branding SharePoint 2010

637
638 638 642 647

Exploring New Branding Features


Adhering to HTML Standards Expanded Browser Support Master Page Improvements Wiki Pages Dialog Boxes Multi-Lingual User Interface (MUI) Visual Upgrade

647
648 649 650 651 652 654 655

Creating a Branded SharePoint 2010 Site


Working with SharePoint 2010 Themes and Alternate CSS Creating a Custom Master Page

655
656 663

Summary About the Author


ChaPter 19: Planning, designing, and administering a multimedia assets management solution

669 669
671

Looking at Digital Assets Management Scenarios


Facing Challenges in Multimedia Solutions Design and Implementation

671
672

Infrastructure Deployment
Remote BLOB Storage Bit Rate Throttling Module BLOB Cache Branch Cache

674
675 677 679 680

Designing the Data Foundation


Planning Asset Content Types Delivering Content through Asset Libraries

682
682 683

xxiii

597132ftoc.indd 23

10/13/10 11:35:30 PM

CONTENTS

Configuring and Developing the User Experience


Using the Out-of-the-Box Multimedia Web Part Multimedia Field Type Content Query Web Part Designing Custom Skins for Multimedia Players Media Player Advanced Configuration

685
685 687 689 689 691

Designing Custom Asset Library View Styles Packaging the Solution in a Custom Site Definition
Asset Library Feature Activation Definition of a Data Structure Creation of Asset Library Instances Definition of Custom Asset Libraries

693 695
696 696 697 697

Notes from the Field


Choosing a Farm Topology Monitoring the Bandwidth Usage Planning Content Storage Facing a High Number of Concurrent Users Improving the Responsiveness for Users in Branch Offices Handling Large Files Stored Inside SharePoint

699
699 700 701 701 701 701

About the Authors


ChaPter 20: aCCessing sharePoint data

702
703

Data Modeling Data Access Options Creating Sample Lists Accessing SharePoint Data Using the Server-Side Object Model
Query Optimization Working with Collections LINQ to SharePoint

703 704 706 707


707 708 721

Accessing SharePoint Data Using the Client-Side Object Model


ClientContext Object: The Entry Point Querying Lists Using JavaScript Manipulating SharePoint Data Using JavaScript JavaScript IntelliSense

730
731 731 735 737

Accessing SharePoint Data Using Web Services


WCF Data Services Legacy ASP.NET Web Services

738
738 742

Accessing SharePoint Data Using No-Code Solutions Summary About the Author

743 744 744

xxiv

597132ftoc.indd 24

10/13/10 11:35:30 PM

CONTENTS

ChaPter 21: finding answers to your sharePoint 2010 Questions

745

Looking for Books Continually Expanding Your Knowledge


Microsoft Sites MSDN Site TechNet Site Microsoft Office Site Webcasts Microsoft Knowledge Base Articles Magazines Blogs Newsgroups and Forums RSS Feeds

745 747
748 749 749 750 750 751 752 752 753 756

Solving Sudden Problems


Searching Asking a Question in a Forum

757
757 758

About the Author


Index

762
763

xxv

597132ftoc.indd 25

10/13/10 11:35:30 PM