Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
SP 2013: Full Trust SolutionDevelopmentSharePoint Saturday – MONTRÉAL2 février 2013 – February 2nd 2013
Merci à nos commanditaires!    Thanks to our sponsors!
{ About.Me() }•   Current SharePoint MVP•   Author for two SP 2010 development books•   SharePoint Architect for Infusion•...
London   Kraków   Dubai   New York   Toronto   Boston
And, yes, I do really have a Black             Belt. 
Published Books
Prize! Telerik DevCraft Ultimate Collection
Agenda
Why Full Trust?
The New SharePoint « App » Model
The New SharePoint « App » Model
Full Trust Solutions in SharePoint
Full Trust Solutions in SharePoint
Full Trust Solutions in SharePoint
Solution Packages• Solution Packages are sets of            Web Parts  functionality deployed to the farm or  site collect...
Features   Solution• A ‘Feature’ is a defined set of  functionality encapsulated                                          ...
Convert from    SP2010
Sample App – Footer Links• Illustrates a very common development pattern  1. Define schema: Site Columns and Content Types...
Solution Structure and Dependencies
Use Existing Solutions from SharePoint 2010  SharePointProductVersion="14.0"
Converting VS Solutions from SharePoint 2010  SharePointProductVersion="15.0"
Converting VS Solutions from SharePoint 2010
SP 2013 Dev
Development in SharePoint 2013
AdvancedDeployment
Solution File (WSP) Deployment• Know the solution deployment life cycle!               •   Uninstall-SPSolution           ...
Automate Solution Provisioning$SolutionPackage = "FooterLinks2013Schema.wsp"$solution = Get-SPSolution | where-object {$_....
Feature Receiverspublic override void FeatureDeactivating(SPFeatureReceiverProperties properties)       {           SPWeb ...
Content / Contenu
Content / Contenu
Content / Contenu
Content / Contenu
Best Practices
Right # of Solutions?•   Partition according to feature scope•   Partition with reusability in mind•   Partition with main...
What’s Your Story?•   Methodically planned deployment•   The “big bang” deployment•   Visual Studio and SharePoint Designe...
Deployment Best Practices
Conclusion
Remerciements / Thanks       Questions et réponses / Q&Aemusters@infusion.com
Merci à nos commanditaires!    Thanks to our sponsors!
 Visitez-nous! – Visit Us!     Site principal / Main site – www.sharepointquebec.org     Twitter - @guspquebec     Fac...
Upcoming SlideShare
Loading in …5
×

Full Trust Solution Development in SharePoint 2013

4,487 views

Published on

My presentation on the full trust solution model in SharePoint 2013 for SharePoint Saturday Montreal Feb 2 2013. The premise is you developed full trust solutions in SP 2007 / 2010 and wish to leverage that skillset or legacy solutions in an on premise situation.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Full Trust Solution Development in SharePoint 2013

  1. 1. SP 2013: Full Trust SolutionDevelopmentSharePoint Saturday – MONTRÉAL2 février 2013 – February 2nd 2013
  2. 2. Merci à nos commanditaires! Thanks to our sponsors!
  3. 3. { About.Me() }• Current SharePoint MVP• Author for two SP 2010 development books• SharePoint Architect for Infusion• Speaker at International Conferences on SharePoint, at user groups, and at SharePoint Saturdays• Certified Trainer for the industry leading SharePoint training from Critical Path Training• Telerik “Insider”• Holds all MS certifications for SharePoint 2010• Harley-Davidson ™ Enthusiast! https://mvp.support.microsoft.com/profile/Ed.Musters
  4. 4. London Kraków Dubai New York Toronto Boston
  5. 5. And, yes, I do really have a Black Belt. 
  6. 6. Published Books
  7. 7. Prize! Telerik DevCraft Ultimate Collection
  8. 8. Agenda
  9. 9. Why Full Trust?
  10. 10. The New SharePoint « App » Model
  11. 11. The New SharePoint « App » Model
  12. 12. Full Trust Solutions in SharePoint
  13. 13. Full Trust Solutions in SharePoint
  14. 14. Full Trust Solutions in SharePoint
  15. 15. Solution Packages• Solution Packages are sets of Web Parts functionality deployed to the farm or site collection (sandbox)• May contain one or more Features, assemblies, pages, controls, and other artifacts Assemblies WSP• SharePoint framework handles installation and configuration of solution items• Automated packaging and deployment in Visual Studio 2010 Mapped Folders
  16. 16. Features Solution• A ‘Feature’ is a defined set of functionality encapsulated Feature within a specific format• Features may be comprised of any combination of code, XML Project Item including web parts, workflows, and site definitions• Features may be deployed Receiver Assembly Web Part Template Workflow individually or as a part of the solution package
  17. 17. Convert from SP2010
  18. 18. Sample App – Footer Links• Illustrates a very common development pattern 1. Define schema: Site Columns and Content Types 2. List Provisioned with attached content types 3. A Web Part that performs a content query against the content type / SP List
  19. 19. Solution Structure and Dependencies
  20. 20. Use Existing Solutions from SharePoint 2010 SharePointProductVersion="14.0"
  21. 21. Converting VS Solutions from SharePoint 2010 SharePointProductVersion="15.0"
  22. 22. Converting VS Solutions from SharePoint 2010
  23. 23. SP 2013 Dev
  24. 24. Development in SharePoint 2013
  25. 25. AdvancedDeployment
  26. 26. Solution File (WSP) Deployment• Know the solution deployment life cycle! • Uninstall-SPSolution • Remove-SPSolution Web Servers • Add-SPSolution • Install-SPSolution Install Debugging Uninstall “MakeCab” mySolution.wsp (WSS Solution Cab) add WSS remove Config DB
  27. 27. Automate Solution Provisioning$SolutionPackage = "FooterLinks2013Schema.wsp"$solution = Get-SPSolution | where-object {$_.Name -eq $SolutionPackage}if ($Solution -ne $null) { if($Solution.Deployed -eq $true) { Write-Host "Uninstall: " $SolutionPackage Uninstall-SPSolution -Identity $SolutionPackage -Local -Confirm:$false } Write-Host "Remove: " $SolutionPackage Remove-SPSolution -Identity $SolutionPackage -Confirm:$false}$wspPath = Resolve-Path $SolutionPackage;Write-Host "Add: " $SolutionPackageAdd-SPSolution -LiteralPath $wspPathWrite-Host "Install: " $SolutionPackageInstall-SPSolution -Identity $SolutionPackage -Local -GACDeployment -FOrce
  28. 28. Feature Receiverspublic override void FeatureDeactivating(SPFeatureReceiverProperties properties) { SPWeb site = properties.Feature.Parent as SPWeb; if (site != null) { SPList list = site.Lists.TryGetList("Footer Links 2013"); if (list != null) { list.Delete(); } } }
  29. 29. Content / Contenu
  30. 30. Content / Contenu
  31. 31. Content / Contenu
  32. 32. Content / Contenu
  33. 33. Best Practices
  34. 34. Right # of Solutions?• Partition according to feature scope• Partition with reusability in mind• Partition with maintainability in mind• Partition along activation dependencies• Put “schema” in its own solution• Item types have tendency to be grouped together (e.g. web parts, workflow templates)
  35. 35. What’s Your Story?• Methodically planned deployment• The “big bang” deployment• Visual Studio and SharePoint Designer mix• Manual Deployment – 35 page manual• Lack of Deployment Automation• Actually, there is no real deployment
  36. 36. Deployment Best Practices
  37. 37. Conclusion
  38. 38. Remerciements / Thanks Questions et réponses / Q&Aemusters@infusion.com
  39. 39. Merci à nos commanditaires! Thanks to our sponsors!
  40. 40.  Visitez-nous! – Visit Us!  Site principal / Main site – www.sharepointquebec.org  Twitter - @guspquebec  Facebook - http://www.facebook.com/groups/206445679432304/  Meetup- http://www.meetup.com/guspquebec/  LinkedIn - http://www.linkedin.com/groups?gid=149597

×