350 likes | 523 Views
Windows SharePoint Services v3.0. Martin Parry Developer & Platform Group Microsoft Limited martin.parry@microsoft.com www.martinparry.com. A Quick Plug. 10 th May 2008 http://www.developerdayscotland.com. Agenda. From ASP.NET to SharePoint SharePoint terminology primer
E N D
Windows SharePoint Services v3.0 Martin Parry Developer & Platform Group Microsoft Limited martin.parry@microsoft.com www.martinparry.com
A Quick Plug... 10th May 2008 http://www.developerdayscotland.com
Agenda • From ASP.NET to SharePoint • SharePoint terminology primer • SharePoint Schema • Developing & deploying your features • SharePoint extensibility points • WebParts
Windows SharePoint Services • Anyone with a Windows Server license can download and install WSS • Anyone licensed to access a Windows Server can access WSS • Installs with an embedded SQL Server • No extra SQL license required for this, but... • To scale up, you need separate SQL Server • Which needs to be licensed separately
From ASP.NET to WSS v3.0 • Developer creates provisioning infrastructure per site • Multiple sites = duplicating infrastructure • One provisioninginfrastructurefor thousandsof sites
ASP.NET Integration Windows SharePoint Services " V2" Windows SharePoint Services “Version 2” ASP.NET 1.1 ASP.NET 2.0 Windows SharePoint Services “Version 3” Windows SharePoint Services “V3”
WSS Databases WSS data and content stored in SQL Server Provides foundation for scaling to Web farm environment Configuration data stored in WSS configuration database Site content and customizations stored in content databases
Preparing IIS to host WSS sites • Create an IIS Web Application • (a.k.a. Virtual Server) • Either directly via the IIS console, • Or via SharePoint 3.0 Central Administration • Extend the IIS Web Application • Adds the configuration in the configuration database • Creates folder structure • Creates web configuration files • No more ISAPI filter !
Important WSS v3 Concepts Farm The highest-level scope for a WSS deployment An installation of one of more Web servers and back-end servers Each WSS farm has one and only one configuration DB Web Application (a.k.a. Virtual Server) An IIS Web site extended with WSS Entry point capable of hosting 10,000s of site collections Site Collection (a.k.a. Site) Unit of scale and ownership containing top-level site Stored in one specific content DB Site (a.k.a. Web) Many per site collection Uses same content DB as parent site
Sites and Site Collections WSS manages sites in terms of site collections Each Web Application can host one or more site collections Each site collection has exactly one top-level site A site collection may (or may not) have child sites
Lists and Document Libraries • Containers for Storing Content SharePointUI List ContentDatabase DocumentLibrary CustomApplications Picture Library SmartClients ... CAML Schemas
SharePoint Lists List types designed to store content in form of items Each list type defines schema including set of columns List type includes Form pages (e.g. AllItems.aspx) List type can have multiple views Creating a list instance from a list type Create list instance using WSS built-in list types (e.g. Contacts) Create list instance from custom list and define columns Users can add/remove/modify columns on list instance List template used to create list type from instance List instance can be template-ized from list settings page List templates create new list types scope at site collection
Document Libraries WSS Document Library is a hybrid list type Provides support for uploading/storing documents Provides support for document check-in/check-out Provides support for document versioning Document images store in SQL Server content DB Document Library has a document template Document template used when user clicks New command Document Library can contain custom columns Provide easy way to add metadata to documents
WSS v3 supports shared column definitions Single column definition can be reused across many lists Site column definitions stored in Site Column Gallery Site column scoped and reusable across entire site collection Site Columns
Foundation for content management in WSS v3 Reusable definition for list schema Defines constraints and requirements for an item type Created by users and developers Reused and extended by users Examples Proposals for software projects Requires author Requires data for scheduling and budgeting Requires reviews by technical and finance departments Customer presentation Requires author Requires reviews by legal and art departments Introduction to Content Types
Columns to represent metadata or properties A document template on which to base documents of this type Custom forms for New, Edit, and Display use with content type Event handlers Workflows available for items of this content type Information Management policies Content Types can include…
Allows base definition reuse across multiple types Core properties can be defined in base content type Base content type inherited by more specific content types Inheriting Content Types Base Document Litware Document Litware Proposal Litware Presentation Litware Customer Report
Innovation to enhance modular provisioning Group logical elements into scenario-driven “features” Features can be added to and reused across site definitions New features can be activated in existing site to add functionality Features scoped at web, site, web application, farm What are Features?
Core Feature Components Elements.xml Custom Actions Custom Views Content Type Definitions Layouts Pages Modules (files) List Instances List Templates Event Receivers Delegate Controls Workflow Bindings Feature Name ID Description ScopeReceiver assembly Activation Dependencies Element Manifests Feature.xml
WSS Out-Of-The-Box Features Farm Features WSS Core Links ContentLight Up Site Collection Features Core Content Types Core Column Templates Basic Web Parts Web Features Document Libraries Picture Libraries Basic List Links Team Collaboration Announce- ments Tasks Contacts Events Survey Discussion Board Visible Features Hidden Features
Making Features Available • Features must be copied to \12\Template\Features folder of every Front-end Web Server • Features must be installed • Administrators can activate or deactivate features using • The browser • Using STSADM • Event handlers can be hooked-up with the activate and deactivate events Stsadm.exe –o installfeature –filename myfeature\feature.xml Stsadm.exe –o activatefeature –filename myfeature\feature.xml –url url
WSS Solutions • CAB file with .wsp extension • Manifest.xml describes content • Can contain... • Features • Template files • Resource files • Assemblies • Must be deployed before use
Solution and Feature Lifecycle Add Solution Delete Solution Deploy Solution Retract Solution Activate Features Deactivate Features
Web Parts in WSS 3.0 ASP.NET 2.0 Runtime WSS V3 Runtime WSS Web Parts ASP.NET Web Parts ASP.NET Web Parts WSS V2 Runtime WSS Web Parts WSS Web Parts
ASP.NET 2.0 Web Parts in WSS v3 • Web Parts derive from WebPart base class • All Web Parts inherit common functionally using System; usingSystem.Web.UI; usingSystem.Web.UI.WebControls.WebParts; namespaceLitwareWebParts { publicclassHelloWorldWebPart : WebPart { protectedoverridevoidOnPreRender(EventArgs e) { this.Title = "Litware Project Revenue"; } protectedoverridevoidRenderContents(HtmlTextWriter writer) { writer.Write("Hello, world"); } } }
Connectable Web Parts • Provider and consumer Web Parts • Data passed is defined by custom interface • Connections is part of SharePoint infrastructure Web Part Page Master Data Detail
Summary • Provisioning framework for multiple sites • Config and content* go in SQL database • Flexible schema • Highly customisable and extensible • Developers use Features and Solutions • Users can create sites and content • We didn’t talk about Workflow
MSDN in the UK • Visit http://msdn.co.uk • Newsletter • Events • Screencasts • Blogs