how to upgrade vsewss projects? common issues you might run into
TRANSCRIPT
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Advanced Developer Training
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Upgrading Code from SharePoint Server 2007 to SharePoint Server 2010
NameTitleCompany
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Agenda
Upgrading VSeWSS projects
Common upgrade issues for custom codeIssues you might run into during upgrade your code
Managing your upgrade processWhat to consider during upgrade planning for your customizations
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
VSEWSS PROJECT UPGRADES
How to upgrade VSeWSS projects?
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Upgrade tool for VSeWSS
VS.NET Template that allow for importing of existing VSeWSS projects
VB and C#VSeWSS 1.1 and up
Converts projects to Visual Studio 2010 format and maintains existing project layoutAvailability
Released after RTM
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Overview
Template “Import VSeWSS Project”Supports Full trust and sandbox solutions
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Before & AfterVSEWSS WSP
View
Visual Studio 2010 Packaging Explorer
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Refactoring Solutions
VSeWSS had 1:1 Feature:artifactVS2010 is more flexibleFeature Designer
Add/Remove SharePoint Artifacts into features
From other projects in solution
Feature Rename, Add, Remove and Delete
Packaging ExplorerAdd/Remove Features from WSP Add/Remove custom assemblies
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Refactoring Your WSPRefactored
(multiple artifacts / feature)Original
(1 artifacts for 1 feature)
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
UPGRADE ISSUESCommon issues you might run into
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Upgrade Issues
Site templates - STP FilesUI Changes
CSSCustom ActionsBackwards Compatible UI
Large List Query ThrottlingDeprecated API’sDeployment Path issuesProject RefactoringOther issues
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Create V3 site
Upgrade to V4
Fix any Issues
Save as
Template
Upgrading site templates
Site template file format is not anymore STP
Need to be converted to solution packages STP Template
.WSP
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Backwards Compatible UI
( Configurable on a site by site basis )
V3 UI
V4 Development
V4 UIV3 UI Mode
ToolbarsV3 CSSV3 Themes
No Interactive calendarsNo In-Place Wiki editsNo Ribbon
SP2007 SP2010
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Site Collection Options
Site Settings> Site Collection Administration
> Supported User Experiences
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Site Options
Site Settings> Title, Description & Appearance (in V3 UI Mode)
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Object Model Options
Web LevelSPWeb.UIVersion (int values of 3 or 4)
Site CollectionSPSite.UIVersionConfigurationEnabled“Preview Mode” if in V4 and UIVersionConfigurationEnabled==true
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published April 2010
Versioned Controls
Allows for rendering of version specific content.
During Render
At Load Time – handles child controls properly
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
UI Compatibility Mode
demo
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
CSS Changes
What has changed in SharePoint CSS?Almost everything!
Any customizations that depend on V3 CSS such as master pages will need to be redesigned to work correctly in V4.
Rendering based on XHTML WCAG 2.0 AA level compliant
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Custom Actions
No more toolbars in V4 UI ModeToolbar actions are moved
Moved to Custom Commands on the ribbon.It is possible to show ribbon and toolbar by modifying the list form web part properties.
Actions with code behind(ControlAssembly, ControlClass, or ControlSrc attribute) don’t migrate to Custom Commands tab.
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Upgrading master pages
1. Remove unnecessary controls, which are replaced with ribbon
Publishing Console, Site actions, sign in and log-in controls
2. Add new place holdersPlaceHolderQuickLaunchTop, PlaceHolderQuickLaunchBottom
3. Add the Ribbon to page4. Add additional controls to page
SPPageManager, ScriptManager, ScriptLink
5. Modify CSS classes based on your UI
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Upgrading themes
Old themes are not compatible with 2010
New themes files have to be created
Old themes can be used with legacy UI rendering mode before upgrade to 2010 UI is done
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Upgrade changed content
If SharePoint Designer has been used to customize site content, changed files are in database, not in file system
Two optionsReset the content to be in uncustomized state and provide updates using Feature FrameworkUse SPD to manually update the changed files
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
List view threshold
Queries that return/touch large numberof list items may fail. Thresholds are configurable through the Central Administration site.
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Large List Considerations
This can bite you
Need it to surface in DevelopmentTest as a non-admin userUse realistic data volumes in development and test servers
Refactor code to use ContentIterator, if possible
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Using Existing Code
All SharePoint 2007 code in all processes will work without recompilation
Achieved by using machine level binding redirections
Binding redirections will work also for any custom code, which is not running under IIS
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Deprecated API's
Numerous API’s have been deprecated.
Recompile your application for 2010 and you will see warnings for any affected API’s within your application.Deprecated doesn’t always mean unsupported!Only affect will be a compiler warningMost API’s deprecated in 2007 are still in 2010Microsoft will not invest in these API’s in the future and will remove deprecated APIs after next version
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Deprecated API's Examples
SPFarm.CreateMessage: Use the SPFarm.Create method that takes a passphrase.
SPVirtualServerMessage: Use SPWebApplication or SPIisSettings instead.
Shared Service Provider Code in some level
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Path and registry issues
Path to the SharePoint Hive has changed
C:\Program Files\Common Files\Microsoft Shared\Web Server Extension\14
Custom code that references \12 should be updated
Custom code references to 12 registry keys should be updated
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Other Issues
X86->x64 COM references (IID changes)3rd party dependenciesHttpModule/HttpHandler registration changes for IIS7 integrated pipeline
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Other issues (cont)
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Project RefactoringConsole/WinForms Applications
Build as x64, .Net 3.5 SP1Fix-up references
VS 2008/2005 ProjectsImport WSPRefactorAdd non-packaged files (source code, BDC, docs, scripts)Fix-up referencesAdd additional support/related projects
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Case – Global intranet upgrade
demo
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Upgrade logging
More logging information availableActions conducted during psconfig upgrade are logged to dedicated logs
Logs located in the ULS folderImproved logging and seperate error log
User interface on central administration application to view the upgrade actions
Provides additional information on the actions
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Logs on the file system
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Upgrade status from CA
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
MANAGING YOUR UPGRADE PROCESS
How to manage your upgrade process?
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Upgrade process
It’s much more than your customizations
Always use QA environments to verify the process
Preruns and document the possible issues and process to deployVirtualization provides excellent tools to move back to previous state
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Upgrade Cycle: OverviewLearn• Requirements/
prerequisites• Upgrade methods• Downtime
mitigation• Common issues Prepare
• Document environment
• Manage customizations
• Plan upgrade strategy
• Make items upgradable
Test• Build test farms
• Use real data• Evaluate techniques• Find issues early
Implement• Build/upgrade farms• Deploy
customizations• Minimize downtime• Monitor progress
Validate• Upgrade event
failures• UI/UX issues• Data issues
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Upgrade Cycle: Learn
Requirements/Pre-reqs
64 bit onlyOperating SystemSQL server
Upgrade methodsIn-PlaceDatabase Attach
ContentProfileProject
WID to SQL Migration
Downtime mitigationRead-only content databasesParallel upgrades
Multiple temporary farmsParallel database attach
AAM redirection
Common issuesMissing dependenciesUI changesLack of space
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Upgrade Cycle: Prepare
Document environment
Farm structure/hierarchyLanguage packsCustomizations
Plan upgrade strategy
Farm upgrade orderOrder of operationsDowntime limits/mitigateRollback processHardware upgradesSpace requirementsSpring cleaning
Manage Customizations
Identify customizationsCollect customizations
Make items upgradable
SolutionsFeaturesSite definitionsWeb parts
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Upgrade Cycle: Test
Build test farmsUse real data (copies of entire databases)
To identify trouble areasTo determine upgrade performance
Use similar hardware if possible
Evaluate techniquesUpgrade processDowntime mitigationTroubleshooting/Validation
Find issues earlyDetermine and test mitigations before upgrade
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Upgrade Cycle: Implement
Build/upgrade farmsServices farmContent farm
Deploy customizationsSolutions whenever possible
Minimize downtimeUse read only with fallback environmentBuild for upgrade parallelism
Monitor progressWatch upgrade status indicatorsEnsure upgrade process is on schedule
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Upgrade Cycle: Validate
Upgrade event failures1. Review logs to identify issue2. Implement fixes3. Restart/resume upgrade
UI/UX issuesUI Version issuesGhosting issuesXHTML compliance issues
Data issuesOrphaned items/database corruptionHidden column dataConnectivity issues to data sources
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
Summary
Upgrading VSeWSS project
Common upgrade issues for custom codeIssues you might run into during upgrade your code
Managing your upgrade processWhat to consider during upgrade planning
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
©2010 Microsoft Corporation. All rights reserved. RTM Content - Published May 2010
© 2010 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after
the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.