What’s New for Developers in SharePoint 2010Geoff Varosky<br />
About Me<br />Geoff Varosky MCP, MCTS<br />Senior Solutions Developer for Grace-Hunt, LLC.<br />Blog: http://www.geoffvaro...
About Grace-Hunt<br />Founded in 2004<br />Based in Hudson, MA<br />Presence in North East, Mid Atlantic, and South East R...
http://www.bostonsharepointug.org<br />Meeting Every 2nd Wednesday of the Month<br />@ Microsoft N.E.R.D. Center in Cambri...
Quick Poll<br />Who currently uses SharePoint?<br />Who has done any SharePoint Development?<br />Who has plans to move/in...
History…<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-...
History<br />In the beginning…<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br...
History<br />In the beginning…<br />SharePoint Team Services / SPS 2001<br />Visual Studio<br />SDK<br />API<br />Twitter:...
History<br />Then back in ‘03<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br ...
History<br />Then back in ‘03<br />WSS v2 and SPS 2003<br />SDKs<br />Visual Studio<br />API<br />Lots more books and blog...
History<br />Then in ’07<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Com...
History<br />Then in ’07<br />WSS v3 and MOSS 2007 SDKs<br />API<br />Lots more books and blogs<br />Many more 3rd Party T...
History<br />Then here comes 2010 – Paydirt!<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoff...
History<br />Then here comes 2010 – Paydirt!<br />SDKs<br />API Enhancements<br />New Ways of Accessing Data<br />REST API...
SharePoint 2010 Developer Platform<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.co...
Development<br />Environment<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br /...
SharePoint “Developer Edition”<br />Just for developers<br />No longer required to develop on a server<br />Install and ru...
SPD 2010<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-...
SharePoint Designer 2010<br /><ul><li>BCS Designer
MAJOR improvement over BDC
http://snipurl.com/tqzx1
Ability to package up solutions directly into WSPs
Add Custom Actions to the Ribbon and List Item Menus
http://snipurl.com/tr0t3
Can import workflow design from Visio 2010, and export to Visual Studio 2010
Reusable Workflows
Improved Page Editing and Workflow Designer
“Save Site as Template” Creates WSP</li></ul>Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvaros...
Demo<br />SharePoint Designer 2010<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.co...
Visual Studio<br />2010<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Comp...
Visual Studio 2010 & SharePoint Toolkit<br />Integrated debugging<br />Project and Item Templates<br />Required x64 and Lo...
Visual Studio 2010 & SharePoint Toolkit<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvaros...
Visual Studio 2010 & SharePoint Toolkit<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvaros...
Visual Studio 2010 & SharePoint Toolkit<br />TFS Integration<br />BCS Support<br />WSP Importing<br />SharePoint Project S...
Visual Studio 2010 & SharePoint Toolkit<br />WSP Importing*<br />Wizard for selecting WSP<br />Declarative elements can be...
Visual Studio 2010 & SharePoint Toolkit<br />SharePoint Project System<br />Project Commands<br />Package, Retract & Deplo...
Visual Studio 2010 & SharePoint Toolkit<br />SharePoint Explorer<br />Tree-View of SharePoint Site and Artifacts<br />Site...
Visual Studio 2010 & SharePoint Toolkit<br />Extensibility<br />Server Explorer Extensions<br />Deployment Extensions<br /...
Demo<br />Visual Studio 2010<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br /...
Developer<br />Dashboard<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Com...
Developer Dashboard<br />      Powerful interface to debug and/or monitor page performance<br />Twitter: @gvaro<br />Email...
Developer Dashboard<br />STSADM<br />stsadm –o setproperty –pn developer-dashboard –pv “OnDemand “<br />stsadm –o setprope...
Developer Dashboard<br />Complete Request/Response Timing Information on page load for all operations performed<br />Reque...
Developer Dashboard<br />Basic Statistics of the page load process<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.co...
Developer Dashboard<br />Inspection of SQL Queries<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www...
Developer Dashboard<br />Inspection of <br />SPRequest Objects<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br...
Developer Dashboard<br />Additional Information on…<br /><ul><li>Service Calls
Asserts and Critical Events
Web Parts Events Offsets</li></ul>More Information on my blog<br /><ul><li>http://snipurl.com/u10su
Programmatically enabling/disabling DD
PowerShell Commands
Additional API configuration
http://snipurl.com/u10tf (Extensions)</li></ul>Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvar...
PowerShell<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grac...
PowerShell<br />SharePoint 2010 Management Console<br />Command environment allows for scripting<br />Leverage the API dir...
Demo<br />PowerShell &<br />Developer Dashboard<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.ge...
PowerShell<br />CMDLETS<br />Get-help <cmdlet><br />Get-help <cmdlet> -detailed<br />Get-Command Get-SP*<br />Get and Set<...
PowerShell<br />For More Information…<br />Windows PowerShell for SharePoint 2010 Administrator<br />http://snipurl.com/u7...
Sandboxed<br />Solutions<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Com...
Sandboxed Solutions<br /><ul><li>Restrictions can be placed on them
Memory, CPU, SQL, Exceptions, Handles, Threads, etc.
Protects Farms by running solutions within a separate process
Upcoming SlideShare
Loading in...5
×

What's New for Developers in SharePoint 2010

4,391

Published on

SharePoint 2010 offers developers a unique and well deserved set of tools to aid in the development of SharePoint 2010 solutions. In this session we’ll cover improvements in the UI and the toolsets themselves, from PowerShell as a powerful scripting interface to the API, the Developer Dashboard, the SharePoint Toolkit in Visual Studio 2010, and more.

Published in: Technology, Spiritual
0 Comments
9 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
4,391
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
0
Comments
0
Likes
9
Embeds 0
No embeds

No notes for slide

Transcript of "What's New for Developers in SharePoint 2010"

  1. 1. What’s New for Developers in SharePoint 2010Geoff Varosky<br />
  2. 2. About Me<br />Geoff Varosky MCP, MCTS<br />Senior Solutions Developer for Grace-Hunt, LLC.<br />Blog: http://www.geoffvarosky.com<br />Email: gvarosky@grace-hunt.com<br />Twitter: @gvaro<br />
  3. 3. About Grace-Hunt<br />Founded in 2004<br />Based in Hudson, MA<br />Presence in North East, Mid Atlantic, and South East Regions<br />Microsoft Gold Partner<br />Specializing in SharePoint and Dynamics (CRM, SL, GP, NAV) Consulting, Implementation, and Integration<br />Web: http://www.grace-hunt.com<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  4. 4. http://www.bostonsharepointug.org<br />Meeting Every 2nd Wednesday of the Month<br />@ Microsoft N.E.R.D. Center in Cambridge, MA<br />6PM – 8PM<br />Next Meeting - 7/14, Bob German (Microsoft) “Developing Great Applications in SharePoint 2010 with Silverlight”<br />Questions/Comments – info@bostonsharepointug.org<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  5. 5. Quick Poll<br />Who currently uses SharePoint?<br />Who has done any SharePoint Development?<br />Who has plans to move/install SharePoint 2010?<br />Who has seen SharePoint 2010?<br />Who has installed SharePoint 2010?<br />Who has developed in SharePoint 2010?<br />Who has used SharePoint Designer or PowerShell?<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  6. 6. History…<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  7. 7. History<br />In the beginning…<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  8. 8. History<br />In the beginning…<br />SharePoint Team Services / SPS 2001<br />Visual Studio<br />SDK<br />API<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  9. 9. History<br />Then back in ‘03<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  10. 10. History<br />Then back in ‘03<br />WSS v2 and SPS 2003<br />SDKs<br />Visual Studio<br />API<br />Lots more books and blogs<br />Many more 3rd Party Tools to Assist Developers<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  11. 11. History<br />Then in ’07<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  12. 12. History<br />Then in ’07<br />WSS v3 and MOSS 2007 SDKs<br />API<br />Lots more books and blogs<br />Many more 3rd Party Tools to Assist Developers<br />WSP Builder<br />STSDev<br />VSeWSS<br />SharePoint Manager<br />SharePoint Solution Installer<br />Features + Solution Packages<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  13. 13. History<br />Then here comes 2010 – Paydirt!<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  14. 14. History<br />Then here comes 2010 – Paydirt!<br />SDKs<br />API Enhancements<br />New Ways of Accessing Data<br />REST APIs, Client OM, LINQ to SharePoint<br />Native Support in VS2010 for SharePoint<br />Packaging, Deployment, Debugging<br />PowerShell (SP 2010 Management Console)<br />Developer Dashboard<br />Sandboxed Solutions<br />Major SPD 2010 Enhancements<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  15. 15. SharePoint 2010 Developer Platform<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  16. 16. Development<br />Environment<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  17. 17. SharePoint “Developer Edition”<br />Just for developers<br />No longer required to develop on a server<br />Install and run SharePoint 2010 (Foundation or Server) on Desktop systems (Vista SP1+, Windows 7)<br />Required to follow install guide instructions in SDK<br />64-bit System is required<br />Not supported for production deployments<br />Only for Standalone Installations<br />Can be disabled via Group Policy<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  18. 18. SPD 2010<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  19. 19. SharePoint Designer 2010<br /><ul><li>BCS Designer
  20. 20. MAJOR improvement over BDC
  21. 21. http://snipurl.com/tqzx1
  22. 22. Ability to package up solutions directly into WSPs
  23. 23. Add Custom Actions to the Ribbon and List Item Menus
  24. 24. http://snipurl.com/tr0t3
  25. 25. Can import workflow design from Visio 2010, and export to Visual Studio 2010
  26. 26. Reusable Workflows
  27. 27. Improved Page Editing and Workflow Designer
  28. 28. “Save Site as Template” Creates WSP</li></ul>Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  29. 29. Demo<br />SharePoint Designer 2010<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  30. 30. Visual Studio<br />2010<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  31. 31. Visual Studio 2010 & SharePoint Toolkit<br />Integrated debugging<br />Project and Item Templates<br />Required x64 and Local SharePoint Instance<br />Visual Designers<br />BCS Designer<br />Web Part Designer<br />Workflow Designer<br />Workflows<br />Site level workflows<br />Templates for Initiation and Association forms<br />Import WSP packages generated in SharePoint Designer<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  32. 32. Visual Studio 2010 & SharePoint Toolkit<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  33. 33. Visual Studio 2010 & SharePoint Toolkit<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  34. 34. Visual Studio 2010 & SharePoint Toolkit<br />TFS Integration<br />BCS Support<br />WSP Importing<br />SharePoint Project System<br />SharePoint Explorer<br />Extensibility<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  35. 35. Visual Studio 2010 & SharePoint Toolkit<br />WSP Importing*<br />Wizard for selecting WSP<br />Declarative elements can be selected for import<br />Modified and extended from there<br />*Cannot export back to SharePoint Designer<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  36. 36. Visual Studio 2010 & SharePoint Toolkit<br />SharePoint Project System<br />Project Commands<br />Package, Retract & Deploy Solutions<br />Project level properties<br />Site URL, Sandboxed<br />Features and Packaging Nodes<br />Mapped Folders<br />Items and Files have specific SharePoint properties<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  37. 37. Visual Studio 2010 & SharePoint Toolkit<br />SharePoint Explorer<br />Tree-View of SharePoint Site and Artifacts<br />Site Collection, Sites, Lists, Fields, Content Types, etc.<br />Can view properties of these items<br />Add connections to different site collections<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  38. 38. Visual Studio 2010 & SharePoint Toolkit<br />Extensibility<br />Server Explorer Extensions<br />Deployment Extensions<br />Packaging Validation Rules<br />MS Build Extensibility<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  39. 39. Demo<br />Visual Studio 2010<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  40. 40. Developer<br />Dashboard<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  41. 41. Developer Dashboard<br /> Powerful interface to debug and/or monitor page performance<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  42. 42. Developer Dashboard<br />STSADM<br />stsadm –o setproperty –pn developer-dashboard –pv “OnDemand “<br />stsadm –o setproperty –pn developer-dashboard –pv “On”<br />stsadm–o setproperty –pn developer-dashboard –pv “Off”<br />Can also been enabled/disabled via PowerShell and code<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  43. 43. Developer Dashboard<br />Complete Request/Response Timing Information on page load for all operations performed<br />Request (GET:http://sp2010dev-01:80/Pages/default.aspx) (1475.21 ms) <br />BeginRequestHandler (0.07 ms)<br />PostAuthenticateRequestHandler (0.06 ms)<br />PostResolveRequestCacheHandler (1117.62 ms) <br />GetWebPartPageContent (1114.78 ms) <br />GetFileAndMetaInfo (1114.32 ms)<br />EnsureListItemsData (157.10 ms)<br />PortalSiteMapDataSource: Determining Starting Node (0.01 ms)<br />Add WebParts (0.82 ms) <br />Press Releases (0.59 ms)<br />ToolBarMenuButton.CreateChildControls for PersonalActions (0.17 ms)<br />ToolBarMenuButton.CreateChildControls for SiteActions (0.62 ms)<br />SearchBoxEx.OnLoad (0.15 ms)<br />SPPageStateControl:OnLoad (0.20 ms)<br />Activate web part connections (0.13 ms)<br />DataBindingDataFormWebPart (Press Releases) (141.31 ms) <br />CBQ Query and Process Data (140.61 ms) <br />GetSiteData (22.16 ms)<br />GetSiteData#1 (25.84 ms)<br />DataBindingDataFormWebPart () (0.45 ms)<br />DataBinding DataFormWebPart ()#1 (0.29 ms)<br />SPPageStateControl:OnPreRender (0.91 ms)<br />Render Ribbon. (3.14 ms)<br />Render WebPart Zone TopZone (0.39 ms) <br />Render WebPart Press Releases (0.35 ms) <br />Xslt Transform (0.12 ms)<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  44. 44. Developer Dashboard<br />Basic Statistics of the page load process<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  45. 45. Developer Dashboard<br />Inspection of SQL Queries<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  46. 46. Developer Dashboard<br />Inspection of <br />SPRequest Objects<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  47. 47. Developer Dashboard<br />Additional Information on…<br /><ul><li>Service Calls
  48. 48. Asserts and Critical Events
  49. 49. Web Parts Events Offsets</li></ul>More Information on my blog<br /><ul><li>http://snipurl.com/u10su
  50. 50. Programmatically enabling/disabling DD
  51. 51. PowerShell Commands
  52. 52. Additional API configuration
  53. 53. http://snipurl.com/u10tf (Extensions)</li></ul>Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  54. 54. PowerShell<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  55. 55. PowerShell<br />SharePoint 2010 Management Console<br />Command environment allows for scripting<br />Leverage the API directly<br />More flexible, extensible, faster, and powerful than STSADM<br />Snap-in for PowerShell for SharePoint Administration<br />Hundreds of cmdlets available OOTB<br />Can tweak options that cannot be done in the UI<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  56. 56. Demo<br />PowerShell &<br />Developer Dashboard<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  57. 57. PowerShell<br />CMDLETS<br />Get-help <cmdlet><br />Get-help <cmdlet> -detailed<br />Get-Command Get-SP*<br />Get and Set<br />Get retrieves information<br />Set changes information<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  58. 58. PowerShell<br />For More Information…<br />Windows PowerShell for SharePoint 2010 Administrator<br />http://snipurl.com/u76ge<br />PowerShell CHM for SharePoint 2010<br />http://snipurl.com/u76fy<br />Global SharePoint Users Group Meeting From 2/2<br />Paul Schaeflein Talking about PWS in 2010<br />http://www.gspug.org<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  59. 59. Sandboxed<br />Solutions<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  60. 60. Sandboxed Solutions<br /><ul><li>Restrictions can be placed on them
  61. 61. Memory, CPU, SQL, Exceptions, Handles, Threads, etc.
  62. 62. Protects Farms by running solutions within a separate process
  63. 63. Restricted by .NET Code Access Security Policy
  64. 64. Allows Site Admins to deploy 3rd party Solutions without worrying about harming the farm
  65. 65. Exposes a subset of the Microsoft.SharePoint namespace
  66. 66. Deployment in Site Collection Solution Gallery
  67. 67. Managed and Monitored in Central Administration
  68. 68. Visual Studio 2010 Required to Build Solutions</li></ul>Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  69. 69. Sandboxed Solutions<br />Supported Solutions<br /><ul><li>Content Types
  70. 70. Site Columns
  71. 71. Custom Actions
  72. 72. Declarative Workflows
  73. 73. Event and Feature Receivers
  74. 74. InfoPath Forms Services
  75. 75. JavaScript, AJAX, jQuery, Silverlight
  76. 76. List Definitions
  77. 77. Non-visual Web Parts
  78. 78. Site Pages</li></ul>Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  79. 79. Sandboxed Solutions<br />Separate Processes<br /><ul><li>User Code Service
  80. 80. SPUCHostProcess.exe
  81. 81. Sandbox Worker Process
  82. 82. SPUCWorkerProcess.exe
  83. 83. Sandbox Worker Process Proxy
  84. 84. SPUCWorkerProcessProxy.exe</li></ul>Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  85. 85. Sandboxed Solutions<br />What is available from the Microsoft.SharePoint Namespace<br />Microsoft.SharePointExcept<br /><ul><li>SPSite constructor
  86. 86. SPSecurity object
  87. 87. SPWorkItem and SPWorkItemCollection objects
  88. 88. SPAlertCollection.Addmethod
  89. 89. SPAlertTemplateCollection.Add method
  90. 90. SPUserSolution and SPUserSolutionCollection objects
  91. 91. SPTransformUtilities</li></ul>Microsoft.SharePoint.Navigation<br />Microsoft.SharePoint.UtilitiesExcept<br /><ul><li>SPUtility.SendEmail method
  92. 92. SPUtility.GetNTFullNameandEmailFromLogin method</li></ul>Microsoft.SharePoint.Workflow<br />Microsoft.SharePoint.WebPartPagesExcept<br /><ul><li>SPWebPartManager object
  93. 93. SPWebPartConnection object
  94. 94. WebPartZone object
  95. 95. WebPartPage object
  96. 96. ToolPane object
  97. 97. ToolPart object</li></ul>Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  98. 98. Sandboxed Solutions<br />If you are running SharePoint on a DC, you will need to run the following PowerShell script to enable Sandboxed Solutions…<br />$acl = Get-Acl HKLM:SystemCurrentControlSetControlComputerName$person = [System.Security.Principal.NTAccount]"Users" $access = [System.Security.AccessControl.RegistryRights]::FullControl$inheritance = [System.Security.AccessControl.InheritanceFlags]"ContainerInherit, ObjectInherit" $propagation = [System.Security.AccessControl.PropagationFlags]::None $type = [System.Security.AccessControl.AccessControlType]::Allow $rule = New-Object System.Security.AccessControl.RegistryAccessRule($person, $access, $inheritance, $propagation, $type) $acl.AddAccessRule($rule) Set-Acl HKLM:SystemCurrentControlSetControlComputerName $acl<br />…and then make sure the User Code service is running in Central Admin<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  99. 99. Sandboxed Solutions<br /><ul><li>All Sandboxed Solutions Follow a Point System
  100. 100. Managed via Quota Templates in Central Admin
  101. 101. Hit allocation, you get an error in the Web part
  102. 102. ~1 day until you can use the web parts again
  103. 103. Site admins can monitor via Solutions gallery</li></ul>Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  104. 104. Sandboxed Solutions<br />Default Resource Measurements<br />AbnormalProcessTerminationCount: 1<br />CPUExecutionTime: 3600 <br />CriticalExceptionCount: 3600 <br />InvocationCount: 100 <br />PercentProcessorTime: 85 <br />ProcessCPUCycles: 100000000000 <br />ProcessHandleCount:10000 <br />ProcessIOBytes: 10000000 <br />ProcessThreadCount: 10000 <br />ProcessVirtualBytes: 100000000 <br />SharePointDatabaseQueryCount: 20 <br />SharePointDatabaseQueryTime: 120 <br />UnhandledExceptionCount: 50 <br />UnresponsiveprocessCount: 2<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  105. 105. Sandboxed Solutions<br />Additional Resources<br />SahilMalik’s Blog Series on Sandboxed Solutions<br />http://snipurl.com/u79ib<br />Microsoft SharePoint Developer Site<br />http://mssharepointdeveloper.com<br />Channel 9<br />http://snipurl.com/u895x<br />Srini Sistla’s Blog<br />http://codename-srini.blogspot.com/<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  106. 106. Demo<br />Sandboxed Solutions<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  107. 107. SharePoint API<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  108. 108. API<br />Client Object Model<br />Simple API to perform CRUD and Management of Data in SharePoint<br />.NET<br />Microsoft.SharePoint.Client<br />Microsoft.SharePoint.Client.Runtime<br />Silverlight<br />Microsoft.SharePoint.Client.Silverlight<br />Microsoft.SharePoint.Client.Silverlight.Runtime<br />JavaScript<br />SP.js<br />SP.Core.js<br />SP.Runtime.js<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  109. 109. API<br />Client Object Model<br />Offers a familiar and consistent object model across multiple development platforms to interact with SharePoint.<br />Utilizes JSON and XML<br />Connects to Client.svc, rather than Web Services for interaction<br />Commands are batched automagically for performance considerations<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  110. 110. API<br />LINQ to SharePoint<br />Entity Based Programming<br />Strong Types and Intellisense<br />Supports List Joining<br />Join Lists based on Lookup Fields<br />Multiple Lists<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  111. 111. Resources<br />My Blog<br />http://www.geoffvarosky.com<br />More information<br />http://mssharepointdeveloper.com<br />SharePoint Development Wiki<br />http://www.sharepointdevwiki.com<br />Microsoft SharePoint 2010 SDK<br />http://msdn.microsoft.com/en-us/library/ee557253(office.14).aspx<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  112. 112. Q&A<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  113. 113. http://www.bostonsharepointug.org<br />Meeting Every 2nd Wednesday of the Month<br />@ Microsoft N.E.R.D. Center in Cambridge, MA<br />6PM – 8PM<br />Next Meeting - 7/14, Bob German (Microsoft) “Developing Great Applications in SharePoint 2010 with Silverlight”<br />Questions/Comments – info@bostonsharepointug.org<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  114. 114. Upcoming Speaking Engagements<br />SharePoint NATION! July 21st (online virtual users group)<br />Creating Custom Actions in SharePoint<br />http://www.sharepointnation.org<br />SharePoint Saturday NYC<br />Creating Custom Actions in SharePoint 2010<br />http://www.sharepointsaturday.org/ny<br />SharePoint Best Practices Conference – D.C. – August 24th-27th“Just Work!” Avoiding Common Hurdles in SharePoint Custom Development<br />http://www.bestpracticesconference.com<br />SharePoint Technology Conference Boston – October 20th – 22nd<br />Creating Custom Actions in SharePoint<br />“Just Work!” Avoiding Common Hurdles in SharePoint Custom Development<br />http://www.sptechcon.com<br />Twitter: @gvaro<br />Email: gvarosky@grace-hunt.com<br />Blog: www.geoffvarosky.com<br />Company: www.grace-hunt.com<br />
  115. 115. About Me<br />Geoff Varosky MCP, MCTS<br />Senior Solutions Developer for Grace-Hunt, LLC.<br />Company: http://www.grace-hunt.com<br />Blog: http://www.geoffvarosky.com<br />Email: gvarosky@grace-hunt.com<br />Twitter: @gvaro<br />

×