2. About the Speaker Technical Architect MCP since 2001, MCAD, MCSD, MCTS Egypt SharePoint User Group Lead SharePoint4Arabs Co-Founder A SharePoint Friend since 2004
3. Outline Technology Stack Developer Productivity Platform Improvements List Improvements Data Access Technologies UI Improvements Sandbox Solutions
5. Developer Platform Workstation : Windows 7 or Vista SP1 64 bit OS only Not supported on production SharePoint Foundation or SharePoint Server Single Server Install
6. Developer Tools Dev Life with SP 2007 VS is Limited Edit CAML files Understanding RootFiles directory of WSS Manual edits to manifest.xml file WSP packaging nightmare
7. Developer Tools Dev Life with SP 2010 End to End Development Story Visual Studio 2010 SharePoint Designer 2010 Developer Dashboard SharePoint SDK
8. Visual Studio 2010 Instant Debugging SharePoint Project Project Items Feature Designer Workflow Designer Server Explorer Package Designer Package Explorer Import WSP Import from SharePoint Designer 2010 Team Foundation Server Support
9. SharePoint Designer 2010 No code tool for SharePoint Free for creating and editing SharePoint artifacts New Tools BDC Entities List Schema Custom Actions Task / Approval Designer Improved Tools Workflow Designer Page Editor SharePoint Designer work can be imported in Visual Studio 2010
12. List Improvements Large List Support (50M items) Relationships with Cascade or Block Validation Rules Excel Like Formula Fields and Items List Query Throttling XSLT Views
13. XSLT Views for Lists Replaces CAML for Views Better Performance Easier edit in SPD Simpler Coding Experience XSLT-based views are now default SharePoint Lists External Lists
14. Events Improvements New Events ListAdding & ListAdded ListDeleting & ListDeleted Synchronous “after” events More User Interface Control Custom error pages
15. Accessing Data LINQ for SharePoint Client Object Model ECMA Script Silverlight OM .Net OM REST APIs
16. LINQ for SharePoint Strong Types LINQ Queries Reference Assemblies Microsoft.SharePoint.Linq SPMetal code generation utility Can modify list data
18. Client Object Model Major request to increase web services Client OM is Simple API an abstraction layer to return results as recognizable SharePoint objects Consistent developer experience across platforms .NET ECMAScript Silverlight
20. UI Enhancements CSS Split into multiple files, only download what’s necessary for the page Javascript Script On Demand allows delaying JavaScript download until it’s needed Debug versions of files show clear JavaScript before optimizing
21. Master Pages Page must derive from Microsoft.SharePoint.WebControls.LayoutsPageBase
22. Ribbon and Dialog Framework Replaceable SharePoint OOB forms Open as Web Page or as Dialog Client Site Custom Actions in Ribbon Context Sensitive Ribbon
25. Sandbox Solutions SharePoint 2007 No proper hosting model defined Hard to control what is being done in custom code SP 2010 Allow a subset of ‘full’ solution features Code executes in sandbox Are deployed by a Site Collection administrator Stored in the Solution Gallery
26. Sandboxed Solutions Process 2 1 5 6 7 4 3 Per-WFE AssemblyCache RootSPWeb of SPSite <siteguid>ompany.intranet.webpart.wspompany.intranet.dll Solution gallery Web Part gallery Sandboxed Code Serice WebParts.wsp
27. Upgrade Your Code SharePoint 2007 code that runs within IIS should work without recompilation Anything Recompile Binding Redirect Deprecated APIs Compiler Warnings No future investment Path issues (14 hive)
28. Keep Up with the Race IIS 7.0 Javascript jQuery AJAX XSLT Powershell LINQ WCF WF Silverlight
29. Learn More MSDN (http://MSSharePointDeveloper.com) TechNet (http://MSSharePointITPro.com) Twitter Search #SP2010
Now that pages are the topic of discussion, master pages and a little branding fits in too. SharePoint 2010 ships with a number of master pages. Important topics to discuss on this slide is how application pages can now also make use of branded master pages, and how there is a default.master that ships the (non-fluent) v3 UI for backwards compatibility.
This chronicles the process of using a custom "bugs" Web Part and solution in a particular site.The SPSite adminuploads a new solution package (*.wsp) into the Solution Gallery of the SPSite. The SPSite admin"activates" the solution. This activates the features within the solution. Web Part files are copied into the Web Part gallery.As part of the activation, solution is validated using the validation framework. Custom validator can be added for example to check that only solutions signed with certain key can be activated. Customers and partners can develop their own validators based on their needs.Some time later, a user decides to add a Web Part to their home page. They go into Web Part edit mode, and click "Add a Web Part". They notice the additional Web Part options, and click Add. SharePoint now checks to see if the bugs.dll file, which backs this Web Part, is installed into the assembly cache. It is not. The assembly is faulted into the assembly cache; it is extracted and copied from the solution file to temporary folder in disk and loaded to memory (disk is cleaned immediately). Now the Web Part is about to be used. It is loaded into Sandbox Code service host.Processes deliver the Web Part to be executed to the service.