Upgrading customized solutions in SharePoint from 2007 to 2010

  • 1,508 views
Uploaded on

Overview of visual studio 2010 extensions for SharePoint 2010, tips, tricks, upgrading exsiting 2007 customizations, and version management. …

Overview of visual studio 2010 extensions for SharePoint 2010, tips, tricks, upgrading exsiting 2007 customizations, and version management.
This is a developer oriented presentation

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,508
On Slideshare
0
From Embeds
0
Number of Embeds
15

Actions

Shares
Downloads
20
Comments
0
Likes
3

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide
  • This is my personal experience upgrading SLFE from 2007 to 2010.(what will be different in my presentation is that it is based on actual migration I did and the lessons I learned, hope it can save you some time and allow to you take the right decisions on your projects today that will prepare you for the future)
  • These are the topics…1st quick overview on VSeWSS2010, allow us to prepare for the next topic, which is the main one…Last – versioning, my personal goal to make all my customer work like an ISV
  • * Sandbox See below
  • 2 clicks
  • Farm level resources:SQL, file system, 14 hive, schema filesEasy to mess up:Developer has full control and can make his environment. Unusable and cannot revert it back to original form.Hard to backup:Server, not code. For code we use VSS.New: Supported under windows 764bit for developers!!!
  • No worries environment:(can restore to original state with no problems so feel free to mess up the server!Win2k8 + HyperV,SunVirtualBox (very bad performance – tested with SharePoint beta)
  • 1 click
  • 2 Clicks
  • Deploying a sandbox solution that has any of the forbidden content will succeed but that content will not be deployed.Application pages: no pages into layouts since no mapped folders.Pages with embedded code are not supported from data base – security.Thumb rule for API: If needs access from outside the current site collection – it will not work.
  • Consumes more resources, slower on runtime, need to upgrade manually SC one by one.But – can run on dedicated WFE’s only, can trace performance and block problematic solutions, safe for beta testing or evaluating can cause no damage outside of the SC.
  • You will need to decide what type of project you wish to create.(Visual web part, list/site definition, event handler, workflow, BCS and much more)If you are not sure you can start with an empty one.For advanced solutions that has many different customizations (web parts, list definitions and more…) just pick any project and add other components to it after you create the project.
  • Files:CS file for web partASCX and ASCX.CS file for user control*.webpart XML fileElements XML file for use in featuresNote: All web part related files are created within the same folder to help you keep resources organized.4 clicks
  • Note:New feature designer!The elements file from within the web part is recognized and added into your feature.
  • Note:New package designer!All features and elements in this projectare recognized and added into your package.1 click
  • When creating this type of project there is a wizard to guide you through the creation of the solution.Note: new types of event receivers.Note: New events to handle in existing event receivers!2 clicks
  • Elements file within the receiver’s folder to be used in features.Receiver’s handler code file.1 Click
  • BCS is NOT the new BDC. It is much more, and it contains BCD within.BCS includes variety of services and features allowing better integration with LOB, like external content type, Read-Write access and more.
  • BCS – Business Connectivity Services (Uses the BDC)1 click
  • Just intelli-sense… no real wizard.2 Clicks
  • no real wizard. But creates all files for you (list def, feature elements, and list instance)
  • 2 clicks
  • no real wizard. But creates all files for you (list def, feature elements, and list instance)
  • 1 click
  • 1 Click
  • 1 click
  • 1 click
  • 1 click
  • 1 click
  • 1 click
  • Updating existing ones done using file system priority trick still working in 2010.We used MSI installer due to some limitations in WSP
  • 1 Click
  • All in XML,Added images, CSS and ASCXShow live, visual studio
  • Show the upgraded componentsShow the new components
  • Show live
  • Show:Ribbon UI - settings pagesWorking in the new item popup
  • 2 Clicks
  • 1 Click
  • Import tool:http://www.microsoft.com/downloads/details.aspx?FamilyID=41019A15-8C73-497C-97FB-502A619A6C461 Click
  • Note: code does not get imported.3 clicks
  • After import is done – still need to import code manually and set namespace / assembly evidence
  • Import SLFE WSP package,Show what is created (skeleton),Manually add code files and set namespace, assembly evidence.
  • Pages, web parts, event handlers – do not support assembly version changes. If you change version number you have to use version mappings.Version in features for upgrade operations if needed. Change only when needed.Version in code, to show in about to identify current running version easily. Change every time.
  • Pages, web parts, event handlers – do not support assembly version changes. If you change version number you have to use version mappings.Version in features for upgrade operations if needed. Change only when needed.Version in code, to show in about to identify current running version easily. Change every time.
  • Pages, web parts, event handlers – do not support assembly version changes. If you change version number you have to use version mappings.Version in features for upgrade operations if needed. Change only when needed.Version in code, to show in about to identify current running version easily. Change every time.
  • GAC – no version collisions* but retracting a solution may remove DLL’s or resources (features, images, css files) used by other packages.The only current solution is to install shared resources in a separate “framework” or “foundation” solution.2 clicksProblems of deploying 2 different framework versions at same time:must change package name / IDIf deploy same feature – retract will remove it. So need to duplicate featuresIf adding custom action links in feature – will be duplicated. Need to hide all older actions in latest version. Cannot hide Custom action groups.Deploying 3rd party assembly (RAD controls for example) – will be removed when retracting any foundation packageNeed to duplicate all resources (images, pages, css, scripts) into versioned sub folders in order for them not to be removed when removing other version.Not recommended. Recommend installing one foundation and use version redirect. NOTE: upgrades must be backward compatible!!!
  • 1 click after auto
  • Overall, my personal experience was very positive,The beta is in great shape and migrating customizations looks simple.