real world sharepoint...real world sharepoint® 2010 indispensable experiences from 22 mvps scot...
TRANSCRIPT
Real WoRld ShaRePoint® 2010
FoReWoRd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .xxvii
intRoduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xxix
chaPteR 1 Building a Perfect Test Environment for SharePoint Server 2010 . . . . . . . 1
chaPteR 2 Upgrading to SharePoint Server 2010 — The Hybrid Approach . . . . . . 35
chaPteR 3 Monitoring SharePoint 2010 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
chaPteR 4 SharePoint 2010 Security Under the Hood —
Claims‑Based Authentication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105
chaPteR 5 Using PowerShell with SharePoint 2010 . . . . . . . . . . . . . . . . . . . . . . . . . 129
chaPteR 6 Backing Up and Restoring SharePoint 2010 . . . . . . . . . . . . . . . . . . . . . . 165
chaPteR 7 Working with SharePoint Designer 2010 . . . . . . . . . . . . . . . . . . . . . . . . . 205
chaPteR 8 Building Sandboxed Solutions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 247
chaPteR 9 SharePoint 2010 Web Parts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269
chaPteR 10 Automating Business Processes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
chaPteR 11 Building Custom Service Applications for the Right Situations . . . . . . 375
chaPteR 12 Managing the SharePoint Application Lifecycle . . . . . . . . . . . . . . . . . . . 407
chaPteR 13 Using Silverlight 4 with SharePoint 2010 . . . . . . . . . . . . . . . . . . . . . . . . . 441
chaPteR 14 Business Connectivity Services . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525
chaPteR 15 Using PerformancePoint Services 2010 . . . . . . . . . . . . . . . . . . . . . . . . . 551
chaPteR 16 Managing Metadata with SharePoint Server 2010 . . . . . . . . . . . . . . . . 577
chaPteR 17 Understanding SharePoint 2010 Search . . . . . . . . . . . . . . . . . . . . . . . . .605
chaPteR 18 Understanding Branding in SharePoint 2010 . . . . . . . . . . . . . . . . . . . . . 637
chaPteR 19 Planning, Designing, and Administering a
Multimedia Assets Management Solution . . . . . . . . . . . . . . . . . . . . . . . . 671
chaPteR 20 Accessing SharePoint Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 703
chaPteR 21 Finding Answers to Your SharePoint 2010 Questions . . . . . . . . . . . . . 745
index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 763
Real World SharePoint® 2010
Real World SharePoint® 2010IndIspensable experIences from 22 mVps
Scot Hillier (Editor) Reza Alirezaei Darrin Bishop Todd Bleeker
Robert Bogue Karine Bosch Claudio Brotto
Adam Buenz Andrew Connell Randy Drisgill Todd Klindt
Gary Lapointe Igor Macori Jason Medero Ágnes Molnár
Chris O’Brien Joris Poelmans Asif Rehmani John Ross
Nick Swan Mike Walsh Randy Williams Shane Young
real World sharepoint® 2010
Published by Wiley Publishing, Inc. 10475 Crosspoint Boulevard Indianapolis, IN 46256 www.wiley.com
Copyright © 2011 by Wiley Publishing, Inc., Indianapolis, Indiana
Published by Wiley Publishing, Inc., Indianapolis, Indiana
Published simultaneously in Canada
ISBN: 978-0-470-59713-2ISBN: 978-1-118-01395-3 (ebk)ISBN: 978-1-118-01396-0 (ebk)ISBN: 978-1-118-01323-6 (ebk)
Manufactured in the United States of America
10 9 8 7 6 5 4 3 2 1
No part of this publication may be reproduced, stored in a retrieval system or transmitted in any form or by any means, electronic, mechanical, photocopying, recording, scanning or otherwise, except as permitted under Sections 107 or 108 of the 1976 United States Copyright Act, without either the prior written permission of the Publisher, or authorization through payment of the appropriate per-copy fee to the Copyright Clearance Center, 222 Rosewood Drive, Danvers, MA 01923, (978) 750-8400, fax (978) 646-8600. Requests to the Publisher for permission should be addressed to the Permissions Department, John Wiley & Sons, Inc., 111 River Street, Hoboken, NJ 07030, (201) 748-6011, fax (201) 748-6008, or online at http://www.wiley.com/go/permissions.
Limit of Liability/Disclaimer of Warranty: The publisher and the author make no representations or warranties with respect to the accuracy or completeness of the contents of this work and specifically disclaim all warranties, including without limitation warranties of fitness for a particular purpose. No warranty may be created or extended by sales or pro-motional materials. The advice and strategies contained herein may not be suitable for every situation. This work is sold with the understanding that the publisher is not engaged in rendering legal, accounting, or other professional services. If professional assistance is required, the services of a competent professional person should be sought. Neither the pub-lisher nor the author shall be liable for damages arising herefrom. The fact that an organization or Web site is referred to in this work as a citation and/or a potential source of further information does not mean that the author or the publisher endorses the information the organization or Web site may provide or recommendations it may make. Further, readers should be aware that Internet Web sites listed in this work may have changed or disappeared between when this work was written and when it is read.
For general information on our other products and services please contact our Customer Care Department within the United States at (877) 762-2974, outside the United States at (317) 572-3993 or fax (317) 572-4002.
Wiley also publishes its books in a variety of electronic formats. Some content that appears in print may not be available in electronic books.
Library of Congress Control Number: 2010934748
Trademarks: Wiley, the Wiley logo, Wrox, the Wrox logo, Programmer to Programmer, and related trade dress are trade-marks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates, in the United States and other countries, and may not be used without written permission. SharePoint is a registered trademark of Microsoft Corporation in the United States and/or other countries. All other trademarks are the property of their respective owners. Wiley Publishing, Inc., is not associated with any product or vendor mentioned in this book.
I would like to dedicate this book to my sister and brother, Nazanin and Ali, and their wonderful families: Marjan, Jack, Kiana, Romina, and Sam. This dedication is my silent way of saying that no matter how far we get from each other, we’re still together, here in my heart. I love you all.
— Reza aliRezaei
I’ve always had the privilege of being free in all my choices, with the unconditioned support of my family. It wasn’t easy, I have to admit. This book is dedicated to all of them.
— Claudio BRotto
Dedicated to all the SharePoint CSS. Thank you for keeping me gainfully employed and allowing me to live the SharePoint lifestyle to which I’ve become accustomed.
— Randy dRisgill
To my ever-patient and encouraging wife, Pamela, and to Tessa, my brilliant daughter who is also an aspiring writer — I couldn’t have done any of this without you!
— gaRy lapointe
The enthusiasm, passion, and determination that I put in my work are possible thanks to the sup-port of Betta, my girlfriend, and Torri, my cat.
— igoR MaCoRi
To my husband, son, and daughter, and all my family for their permanent support. And to all of my friends who believed in me.
— Ágnes MolinÁR
To my boys, Armaan and Ayaan, for always giving me a reason to smile.
— asif RehMani
To Ben and Julia, thanks for making me smile even on the toughest days.
— John Ross
I would like to dedicate my chapter to Sophie, and our cats, Fluffy and Carragher.
— niCk swan
To Nicola and Grant: I love you both. Thank you for your support and for always being there for me.
— shane young
about the technical editoRS
RobeRt bogue, MCSE (NT4/W2K), MCSA (Security, A+, Network+, Server+, I-Net+, IT Project+, E-Biz+, CDIA+), is the president of Thor Projects LLC. Thor Projects LLC provides SharePoint consulting services to clients around the world. Bogue has contributed to more than 100 book projects and numerous other publishing projects. He has been a part of the Microsoft Most Valuable Professional (MVP) program for the past seven years, and was most recently awarded for Microsoft Office SharePoint Server. Before that, Bogue was a Microsoft Commerce Server MVP, and, before that, a Microsoft Windows Servers-Networking MVP. He is also a Microsoft Patterns and Practices Champion, and a team member for the SharePoint Guidance. Bogue is the president of the SharePoint Users Group of Indiana (SPIN, www.spindiana.com). He blogs at www.thorprojects.com/blog. You can reach Bogue at [email protected].
Stacy dRaPeR is a founder of Wild Wires, LLC (a consulting firm based in South Florida), author, and member of PMI. He holds an MCSD certification and has been twice awarded Microsoft MVP. Being involved with Web development since 1993, Draper has led his life in a very interesting direction. He started out in UNIX and, since 1997, has had a strong concentration in Microsoft technologies. Draper enjoys public speaking and has spoken at conferences, code camps, and user groups.
JenniFeR MaSon has dedicated the last seven years to working with SharePoint. She started out as an intern focused on SharePoint and eventually began working as a full-time SharePoint consultant. She is currently working as a Senior SharePoint Consultant with the team at SharePoint911. Her focus has been on strategy, project planning, project management, governance, and best practices for implementing business solutions using SharePoint Technologies. She has worked with a range of companies at different points in the lifecycles of their SharePoint implementation. She is passionate about SharePoint, and loves using the out-of-the box features to bring immediate ROI to the organi-zation. Jennifer is involved in the SharePoint community and is one of the founding members of the Columbus Ohio SharePoint Users Group. You can learn more about Jennifer by viewing her blog at www.sharepoint911.com/blogs/jennifer/default.aspx.
acquiSitionS editoRPaul Reese
PRoJect editoRKevin Shafer
technical editoRSRobert BogueStacy DraperJennifer Mason
PRoduction editoRDaniel Scribner
coPy editoRKim Cofer
editoRial diRectoRRobyn B . Siesky
editoRial ManageRMary Beth Wakefield
FReelanceR editoRial ManageRRosemarie Graham
aSSociate diRectoR oF MaRketingDavid Mayhew
PRoduction ManageRTim Tate
Vice PReSident and executiVe gRouP PubliSheRRichard Swadley
Vice PReSident and executiVe PubliSheRBarry Pruett
aSSociate PubliSheRJim Minatel
PRoJect cooRdinatoR, coVeRLynsey Stanford
coMPoSitoRCraig Johnson, Happenstance Type‑O‑Rama
PRooFReadeRPublication Services, Inc .
indexeRRon Strauss
coVeR deSigneRMichael E . Trent
coVeR iMage© Jim Schemel/istockphoto .com
cReditS
acknoWledgMentS
FiRSt and FoReMoSt, I would like to thank Igor Macori, who co-authored the chapter about Digital Assets Management with me. Igor is a great friend, and this makes writing and working together much easier and enjoyable than it could ever be without him. Being part of this team was amazing. My special “thank you” goes to Scot Hillier, Paul Reese, Kevin Shafer, and all the people at Wrox who performed excellent work in coordinating and turning our drafts into a book. Finally, a huge “Grazie” to my friends and colleagues at Green Team. We find plenty of hurdles and gratifications in our everyday work, and it’s great to share both with you!
— Claudio BRotto
i couldn’t haVe gained an understanding of building custom service applications without the help of quite a few people in order to author my chapter in this book. I’d like to thank the service applica-tion Senior Program Manager, Umesh Unnikrishnan, and Test Lead, Stephen Clark, on the SharePoint product team at Microsoft for answering countless questions and working through various samples. I’d also like to acknowledge Ted Pattison, my business partner and good friend, who gave me the time and asked those thought-provoking questions about service applications. No authoring experience can happen either without the full buy-in from your family, in my case specifically my wife, Meredith, son, Steven, and daughter, Kathryn. In addition, I’d like to thank Paul Oakenfold, Paul van Dyk, and DJ Bolivia for the best development music to work to (techno helps you dive into the code!).
— andRew Connell
thankS to My beautiFul WiFe, Jackie, my parents, Pat and Tom Drisgill, my in-laws, Debbie and Dave Auerbach, and all my friends for being there when I need you and for putting up with me for the past few months while I worked on this and my other book. Also, thanks to my fel-low SharePoint911 coworkers, Elisabeth Olson from Microsoft, and all the other professional SharePoint branders, including Heather Solomon and Heather Waterman, for letting me bounce ideas off them and for providing different perspectives for SharePoint 2010 branding.
— Randy dRisgill
FoR aS long aS i can ReMeMbeR, I’ve wanted to be published. When I was presented with this opportunity to contribute to a book where my chapter would sit alongside those of some of the most talented individuals in the industry, I just couldn’t pass it up. I want to especially thank Scot Hillier for organizing this book and for inviting me to contribute to it, and Kevin Shafer and Paul Reese for making it all happen. I try to provide a lot of my experiences and knowledge to the com-munity through my blog as a way to give back to all those out there who have written blog posts and forum questions and answers, from which I have derived so much of my own knowledge. As such, the information provided within my chapter is, in many ways, the result of all those whom I
have learned from in the community. So, to all the bloggers and forum users out there I say, “Thank you!” And finally, I am nothing without my beautiful wife and daughter, who have both been so patient and encouraging — to them I owe everything.
— gaRy lapointe
thankS to claudio bRotto, I accomplished my second editorial experience in English, after 18 of my books have been published in Italy. I definitely hope that this can be a little contribution from Italy to the SharePoint community worldwide.
— igoR MaCoRi
FiRSt and FoReMoSt, I would like to thank God for giving me the strength to work on this project, even when I was not motivated to do so. Additionally, I would like to thank my working family at B&R for always challenging each other and bringing out the best of each other. These guys really have a passion for this technology, and it’s nice to share the same passion with such a great group. Last, but not least, I would like to thank my loving wife for dealing with my long nights and always provid-ing me with a smile. I would like to dedicate the work that I contributed to this book to my mother, Helene Strutton, and father, Jesus Medero, for being the best parents a son could have. I love you guys.
— Jason MedeRo
FiRSt, i thank god FoR the opportunity to contribute to this book and all the other opportunities that have come my way. Writing a book is never an easy feat. It requires hard work and support from friends and family. I want to thank my very awesome wife, Anisa, for supporting me through-out this process, and for letting me skip out on things as needed so I could hit my deadlines. I’m also very thankful to my boys, Armaan and Ayaan, for the comic relief they provide every time I start stressing out about little things. There is a lot of material in this book, and I’m thankful to be joined by all the wonderful co-authors to provide a thorough breakdown of all the awesome bells and whistles that ship with SharePoint 2010.
— asif RehMani
i Would like to thank my lovely wife, Vanessa. You are the best. I love you! And to my kids, Ben and Julia, I love you both. To my family and friends, I hope to be spending more time with you all now that this book is done. See, I wasn’t just making it up when I said I couldn’t do something because I had to write a book. Last, but not least, I’d like to thank the entire SharePoint911 team; I couldn’t ask for a better group of people to work with. You guys are the best!
— John Ross
WRiting iS an inVeStMent made by the whole family. My love and appreciation goes to Gigi for her patience and understanding while I was locked up “in my cave.”
— Randy williaMs
contentS
Foreword xxvii
IntroductIon xxix
building a PeRFect teSt enViRonMent FoR chaPteR 1: ShaRePoint SeRVeR 2010 1
Getting ready 2Windows 2
What About Windows 7 or Vista? 3
Installing Windows 2008 R2 3
Setting a Computer Name 4
Making the VM a Domain Controller 5
Configuring Windows 7
sQl server 12Installing SQL Server 2008 R2 12
sharepoint 2010 15Installing SharePoint 2010 15
Setting Up Some User Data 25
SQL Server Reporting Services 29
other software 33summary 33about the author 34
uPgRading to ShaRePoint SeRVeR 2010chaPteR 2: — the hybRid aPPRoach 35
Understanding the new sharepoint 2010 Upgrade process 36system requirements for a sharepoint 2010 Upgrade 36sharepoint 2010 Upgrade Improvements 37
Pre‑Upgrade Checker 38
Upgrade Logging 40
Visual Upgrade 41
Database Test cmdlet 44
Expected Downtime 44
Central Administration Status Page 45
Site Access During an Upgrade 46
dealing with large content databases 46
xiv
conTenTs
Upgrading with custom site definitions 47choosing the right Upgrade approach 50
In‑Place Upgrade Approach 50
In‑Place Upgrade Under the Hood 52
Post In‑Place Upgrade 54
Database Attach Upgrade Approach 58
Post Database Attach Upgrade 61
sharepoint 2010 Hybrid Upgrade approach 61Read‑Only Databases Hybrid Approach 62
Detach Databases Hybrid Approach 66
summary 68about the author 68
MonitoRing ShaRePoint 2010 6chaPteR 3: 9
Uls 69Trace logs 70
Configuring Log Settings with PowerShell 74
Using Logs to Troubleshoot 77
Methods for Consuming the Trace Logs 80
Windows event logs 85logging database 86
Configuring the Logging Database 88
Consuming the Logging Database 90
Health analyzer 94Reviewing Problems 94
Rule Definitions 97
Timer Jobs 98Timer Job Management 98
Timer Job Status 100
summary 102about the author 102
ShaRePoint 2010 SecuRity undeR the hoodchaPteR 4: — claiMS‑baSed authentication 105
Introducing the Identity metasystem 106Identity in a claims-based World 107The security Token service (sTs) 108The problem with multiple Identities 110claims Impact on delegation 112mapping Technology to components 113
xv
conTenTs
Active Directory Federation Services (AD FS) 113
Windows Identity Foundation (WIF) 114
CardSpace 114
configuration of sharepoint claims 114SharePoint’s Trusted STS 114
Configuring Claims‑Based Authentication Using the AD FS 2 .0 STS 115
architecture of sharepoint claims 120Internal Enterprise Claims (IEC) 120
Public Cloud Claims (PCC) and the LDAP Provider 122
Enterprise Identity Federation (EIF) 124
summary 126about the author 127
uSing PoWeRShell With ShaRePoint 2010 12chaPteR 5: 9
Understanding powershell basics 130An Object‑Based Scripting Language 131
The Extended Type System 133
The Object Pipeline 136
Formatting Object Data 138
Filtering and Iterating 139
Functions and Scripts 141
Using sharepoint 2010 cmdlets 144Finding What You Need 144
PipeBind Objects 146
Commonly Used Cmdlets 147
Handling Disposable Objects 154
creating custom cmdlets 156When to Create Custom Cmdlets 157
Common Base Classes 157
Custom PipeBind Objects 159
Packaging and Deploying Using Visual Studio 2010 161
summary 164about the author 164
backing uP and ReStoRing ShaRePoint 2010 16chaPteR 6: 5
operations planning 166Importance of a Disaster Recovery Plan 166
Types of recovery 168Content Recovery 168
Disaster Recovery 169
xvi
conTenTs
What’s new in 2010 170Farm Configuration Backup and Recovery 170
Changes to Central Administration 171
PowerShell 172
SQL Database Snapshots 172
Unattached Content Database Recovery 173
List Import and Export 174
Search Recovery Improvements 175
Understanding the Types of backups 175Granular Backups 176
Farm Backups 184
recovery scenarios 194Item‑Level Recovery 194
Site‑Collection Recovery 197
Content Database Recovery 198
Farm Disaster Recovery 198
recommendations 201Keeping a Change Log 201
Using SharePoint Solutions for Custom Code 202
Other Items to Protect 202
Content Database Sizing 203
Performing Trial Restores 203
Third‑Party Solutions 203
summary 204about the author 204
WoRking With ShaRePoint deSigneR 2010 20chaPteR 7: 5
evolution of sharepoint designer 205Who should Use sharepoint designer? 206requirements for Using sharepoint designer 2010 207What’s new? 208
Overview of the New User Experience 208
Restricting Access to SharePoint Designer 213
Branding 217
Views and Forms 224
Workflows 230
Data Sources 239
Using sharepoint designer effectively in Your environment 243Managing Sites 243
Workflows 243
xvii
conTenTs
Branding 244
Prototyping Development Tasks 245
summary 245about the author 246
building Sandboxed SolutionS 24chaPteR 8: 7
The push to no-code solutions 248Understanding the concept of a sandboxed solution 249
Understanding the Execution of Declarative Code 253
Understanding What You Can and Can’t Do 253
Your first sandbox project 255Getting out of the sandbox 259exploring alternatives to the sandbox 265Understanding When to Use sandboxed solutions 266summary 267about the author 267
ShaRePoint 2010 Web PaRtS 26chaPteR 9: 9
Web part History 270Historical Perspective 270
Web Part Goals 271
What’s New 274
Web part development 276Step 1: Prepare Environment 277
Step 2: Create Project 277
Step 3: Add Item 278
Step 4: Configure Feature 278
Step 5: Configure Solution 278
Step 6: Write Code 279
Step 7: Deploy Assets 279
Step 8: Test Solution 279
Step 9: Secure Code 280
Step 10: Deliver Solution 280
Web part basics 280Web Parts Defined 280
Web Part Benchmarks 281
Web Part Framework 282
Web Part Ribbon 289
Web Part Properties 293
Web Part Resources 294
xviii
conTenTs
creating a simple Visual Web part 295Prepare Environment 295
Create Project 295
Add Items 298
Configure Feature 301
Configure Solution 302
Write Code 305
Deploy Assets 309
Test Solution 312
Secure Code 316
Deliver Solution 320
enhancing the Visual Web part 320Write Code 320
Deploy Assets 322
Test Solution 322
adding an editor part 323Write Code 323
Deploy Assets 329
Test Solution 329
adding Web part Verbs 330Write Code 331
Deploy Assets 332
Test Solution 332
summary 332about the author 332
autoMating buSineSS PRoceSSeS 33chaPteR 10: 5
Using Infopath and sharepoint designer Individually 336Building Powerful Forms Using InfoPath 336
Using SharePoint Designer to Build Solutions on Top of SharePoint 344
combining Infopath and sharepoint designer 349Creating InfoPath Forms for the Browser 350
Automating Processes Using SharePoint Designer Workflows 360
The Final Product 371
summary 373about the author 373
xix
conTenTs
building cuStoM SeRVice aPPlicationS chaPteR 11: FoR the Right SituationS 375
Understanding services in sharepoint 376History of services in sharepoint 376
SharePoint Portal Server 2003 376
Office SharePoint Server 2007 377
sharepoint 2010 service architecture framework 377sharepoint 2010 service application extensibility 378
What the Service Application Framework Offers 379
Determining Whether or not to Build a Custom Service Application 379
creating the Wingtip calculator service application 380Configuring the Visual Studio 2010 Project 381
Creating the Application Server Components 384
Creating the Web Front End Server Components 396
Creating the Service Consumers 401
summary 405about the author 405
Managing the ShaRePoint chaPteR 12: aPPlication liFecycle 407
provisioning with solution/feature xml Versus .neT code 408Generating feature xml Using site Templates 409Upgrading a sharepoint application 415
Feature Upgrade in SharePoint 2010 415
An Example of Feature Upgrade 416
Upgrading Different Artifacts 428
assembly Versioning in a sharepoint application 431Versioning of .NET Assemblies 431
Using the BindingRedirect Element in a WSP Manifest 432
Versioning Strategies in SharePoint Applications 435
alm and sandboxed solutions 437Solution Upgrade Model 438
Feature Upgrade 438
Assembly Versioning 438
summary 438about the author 439
uSing SilVeRlight 4 With ShaRePoint 2010 44chaPteR 13: 1
The silverlight news banner 442developing a sharepoint Web part Hosting a silverlight application 453
Adding a Custom Ribbon to the Web Part 459
Changes Made to the Silverlight News Banner 464
xx
conTenTs
deployment possibilities and accessibility scope Impact 465developing a sharepoint custom field Type Hosting a silverlight application 466
The Picture Service 467
The Silverlight Picture Picker 470
The PicturePicker Field 476
The News List Definition 480
developing a sharepoint application page That Hosts several communicating silverlight applications 485
The SLNewsItemsListBox Silverlight Application 486
The SLNewsItemDetails Silverlight Application 495
The News Manager Application Page 502
Hosting a silverlight application in the master page 505The Marquee Server Control 505
The Custom Master Page 507
Deploying the Custom Master Page 507
Using business connectivity services 510Defining the External Content Type 510
Defining the External List 512
Developing the WCF Service 512
Modifying the News Banner Web Part 515
Modifying the News Banner Silverlight Application 517
Using silverlight from within a sandboxed solution 520summary 524about the author 524
buSineSS connectiVity SeRViceS 52chaPteR 14: 5
a brief look back 526Terminology changes 526Welcome to sharepoint 2010 527existing bdc applications during an Upgrade 529bcs features available in sharepoint foundation 529
External Lists 529
External Data Column 530
bcs features available in sharepoint server 2010 531Business Data Web Parts 532
Search 532
User Profiles 534
Office Client Integration 534
Using Tools to create ecTs 536SharePoint Designer 2010 536
xxi
conTenTs
Visual Studio 2010 539
BCS Meta Man 548
developing against the bcs object models 548summary 548about the author 549
uSing PeRFoRMancePoint SeRViceS 2010 55chaPteR 15: 1
The case for business Intelligence 552Why Does a Company Need BI? 552
Asking the Right Questions 552
How Can PerformancePoint Services Help? 553
performancepoint services 2010 overview 553PerformancePoint Services Architecture 553
configuring and enabling performancepoint services 555Configuring the Unattended Service Account 555
Configuring Trusted Locations 556
Enabling PerformancePoint Services on a Site 557
Configuring the Client 558
creating a pps dashboard 559Creating PPS Content 561
Creating the Workspace 561
Deploying Dashboards and Dashboard Components 573
Securing Dashboards 574
about the author 576
Managing Metadata With chaPteR 16: ShaRePoint SeRVeR 2010 577
Information architecture 577Taxonomy and metadata 578Taxonomy Versus folksonomy 580metadata and Taxonomy platform enhancements 580
Applying Centrally Stored Metadata 581
Working with the Term Store Management Tool 583
Using the Service Application 587
Understanding Location‑Based Metadata 590
Understanding Metadata Navigation Settings 591
Document Sets and Metadata Behavior 593
Using Content Organizers 595
Understanding Content Type Syndication 596
Understanding Social Tagging and Metadata 598
Extending Social Networking 599
xxii
conTenTs
programmatic access to the emm service 600Using the Taxonomy API 600
Remote Access to the Term Store 603
summary 604about the author 604
undeRStanding ShaRePoint 2010 SeaRch 60chaPteR 17: 5
new and Improved sharepoint 2010 search 606sharepoint 2010 search engines 608
SharePoint 2010 Search Engine 608
FAST Search Server 2010 Engine 611
deploying sharepoint 2010 search 613Deploying a New Search Service Application 613
Crawling and Indexing 615
Queries and Results 616
Reports 617
deploying fasT search server 617Installing FAST Search Server 2010 for SharePoint 617
Deploying FAST Search Service Applications 619
Using powershell commands 620building the search architecture 621
Defining Content Sources 621
Using Scopes 624
Scheduling Crawls 624
Using Search Federation 625
Understanding Keywords and Best Bets 627
User Context in FAST Search 628
Using People Search 628
customizing User Interfaces 630Understanding Centralized and Decentralized UIs 630
Using Search Centers 631
Using Search Web Parts 631
Customizing the Refinement Panel 632
Integrating the Client 632
Improving “findability” and “searchability” 633Using Managed Metadata 633
Using Metadata Properties 634
Improving Keywords and Best Bets 635
xxiii
conTenTs
Improving People Search 635
Improving the User Context in FAST Search 635
Understanding SEO and SharePoint 2010 635
summary 636about the author 636
undeRStanding bRanding in ShaRePoint 2010 63chaPteR 18: 7
Introduction to sharepoint branding 637Comparing SharePoint Foundation 2010 and SharePoint Server 2010 638
Types of SharePoint Sites 638
How Branding Works in SharePoint 642
Approaches to Branding SharePoint 2010 647
exploring new branding features 647Adhering to HTML Standards 648
Expanded Browser Support 649
Master Page Improvements 650
Wiki Pages 651
Dialog Boxes 652
Multi‑Lingual User Interface (MUI) 654
Visual Upgrade 655
creating a branded sharepoint 2010 site 655Working with SharePoint 2010 Themes and Alternate CSS 656
Creating a Custom Master Page 663
summary 669about the author 669
Planning, deSigning, and adMiniSteRing a chaPteR 19: MultiMedia aSSetS ManageMent Solution 671
looking at digital assets management scenarios 671Facing Challenges in Multimedia Solutions Design and Implementation 672
Infrastructure deployment 674Remote BLOB Storage 675
Bit Rate Throttling Module 677
BLOB Cache 679
Branch Cache 680
designing the data foundation 682Planning Asset Content Types 682
Delivering Content through Asset Libraries 683
xxiv
conTenTs
configuring and developing the User experience 685Using the Out‑of‑the‑Box Multimedia Web Part 685
Multimedia Field Type 687
Content Query Web Part 689
Designing Custom Skins for Multimedia Players 689
Media Player Advanced Configuration 691
designing custom asset library View styles 693packaging the solution in a custom site definition 695
Asset Library Feature Activation 696
Definition of a Data Structure 696
Creation of Asset Library Instances 697
Definition of Custom Asset Libraries 697
notes from the field 699Choosing a Farm Topology 699
Monitoring the Bandwidth Usage 700
Planning Content Storage 701
Facing a High Number of Concurrent Users 701
Improving the Responsiveness for Users in Branch Offices 701
Handling Large Files Stored Inside SharePoint 701
about the authors 702
acceSSing ShaRePoint data 70chaPteR 20: 3
data modeling 703data access options 704creating sample lists 706accessing sharepoint data Using the server-side object model 707
Query Optimization 707
Working with Collections 708
LINQ to SharePoint 721
accessing sharepoint data Using the client-side object model 730ClientContext Object: The Entry Point 731
Querying Lists Using JavaScript 731
Manipulating SharePoint Data Using JavaScript 735
JavaScript IntelliSense 737
accessing sharepoint data Using Web services 738WCF Data Services 738
Legacy ASP .NET Web Services 742
accessing sharepoint data Using no-code solutions 743summary 744about the author 744
xxv
conTenTs
Finding anSWeRS to youR chaPteR 21: ShaRePoint 2010 queStionS 745
looking for books 745continually expanding Your Knowledge 747
Microsoft Sites 748
MSDN Site 749
TechNet Site 749
Microsoft Office Site 750
Webcasts 750
Microsoft Knowledge Base Articles 751
Magazines 752
Blogs 752
Newsgroups and Forums 753
RSS Feeds 756
solving sudden problems 757Searching 757
Asking a Question in a Forum 758
about the author 762
Index 763
FoReWoRd
i had the PleaSuRe to lead SharePoint Technical Product Management and be part of launching SharePoint 2010 to market in May 2010. SharePoint 2010 presents a tremendous amount of oppor-tunity for customers and partners to build solutions with the rich investments we’ve made in features and platform capabilities. The number of man-hours across our engineering and product management teams to build this release is mind boggling to me! This wouldn’t be possible without members of the SharePoint community who provided deep real-world feedback on the challenges and opportunities.
SharePoint 2010 delivers a platform that can host a number of solutions from collaboration self-service sites to business intelligence (BI) dashboards to high-end Internet sites. This allows organizations to consolidate their IT investments in a single place, and deliver a unified productivity experience to their end users. To realize this promise, it’s important to carefully plan and leverage best practices to avoid common pitfalls and sub-optimal designs. With a new product in market, the challenge is always find-ing these real-world best practices.
This book is written by a special group of individuals, many of whom I’ve known and worked with over the last many years. They have been supporters of SharePoint for the last several releases, and have contributed greatly to the larger community, and provided continuous input to us. As part of the Most Valuable Professional (MVP) program, many have had access to SharePoint 2010 since July 2009. Since then, they’ve had the opportunity to test the software and push it to its limits, which has helped us deliver a high-quality product! Each chapter is written by an expert in the community who has spent a significant amount of hands-on time with that specific topic. So, whether you are a SharePoint developer or an IT implementer, I highly recommend this book as you look to realizing the potential of SharePoint 2010!
aRpan shah Director, Microsoft
Blog: http://blogs.msdn.com/arpans Twitter @ arpanshah
September 2010