WSS “v3” for Developers Jan Tielens Blog: //weblogs.asp.net/jan Email: [email protected] Architect...

30
WSS “v3” for Developers WSS “v3” for Developers Jan Tielens Blog: http ://weblogs.asp.net/jan Email: [email protected] .NET Architect & Trainer U2U, Brussels

Transcript of WSS “v3” for Developers Jan Tielens Blog: //weblogs.asp.net/jan Email: [email protected] Architect...

WSS “v3” for DevelopersWSS “v3” for Developers

Jan TielensBlog: http://weblogs.asp.net/janEmail: [email protected] Architect & TrainerU2U, Brussels

AgendaAgenda

WSS v2 versus WSS v3 ArchitectureWSS v3 Storage EnhancementsWSS v3 Customization EnhancementsWhat’s New for Developers in WSS v3

WSS v3 ArchitectureWSS v3 Architecture

Software RequirementsWindows Server 2003 .NET Framework 2.0IIS 6.0 (worker process isolation mode)Windows Workflow Foundation (WF)SQL Server 2000 (SP3) or SQL Server 2005

Better ASP.NET 2.0 citizen than WSS v2No more ISAPI filterWSS extensions now based on HttpModules and HttpHandlers

WSS v2 versus WSS v3WSS v2 versus WSS v3WSS v2

IIS

WSS v2 ISAPI Filter

ASP.NETHandler

ASP.NET

WSS ISAPIExtension

WSSUnmanaged

Code

Config Content

Request

.aspx

.asmx

Excluded Paths Included Paths

WSS v3

IIS

ASP.NETHTTP Modules

Config

Content

Request

ASP.NETHTTP Handlers

WSS HTTP Modules

WSS HTTP Handlers

What are the benefits?What are the benefits?

Inline now with ASP.NET 2.0 best practices for extensibilityVirtual path provider allows for clean access to the SharePoint pages stored in the databaseNew Web Part infrastructureBranding and customization based on ASP.NET 2.0 Master Pages and Provider Model

Forms-based authenticationNavigation controls

Architectural Enhancements

WSS v3 Storage WSS v3 Storage General Platform EnhancementsGeneral Platform Enhancements

Top RequestsRecycle BinSecurity TrimmingItem and Document Level SecurityForced Check-OutMobile Support

Top Requests for List and Document Library Enhancements

WSS v3 StorageWSS v3 StorageList and Document List and Document

EnhancementsEnhancementsNew Field Types

Multi-value lookups, append-only, person

Column Indexing and Cross-Site QueriesVersioning

Major and minor versionsVersion pruningVersioning in lists

RSS Feed SupportOff-line support in Outlook ’12’

More Enhancements

WSS v3 StorageWSS v3 StorageExtensibility EnhancementsExtensibility Enhancements

Shared ColumnsContent Types

List and libraries can now store more than one type of item or documentEvery type can have its own metadata, workflow, event handlers and policies

Field Types are extensible now

Extensibility Scenarios

Windows WorkFlow Windows WorkFlow FoundationFoundation

Single workflow technology for WindowsExtensible framework & toolsetBase for Microsoft products and customer solutionsTransform workflow from niche to mainstream paradigmExposed to developers via WinFX

Workflow BasicsWorkflow BasicsCustom Workflow consists out of one or more activities

Activity LibrariesWF Base Activity LibraryO12 Activity LibraryCustom Libraries

Activity is a classEvents/PropertiesMethods called by WF Runtime engine

WF created using Visual Studio.NET

Deployed as .NET assembly

WSS v3 and WFWSS v3 and WF

WSS supports workflows on items and documentsWorkflows associated with list, document library or content typeWorkflow started and completed by user actions

Workflows are managed using WSS task listsWorkflow-related task lists use standard WSS task list schemaWorkflow activities create and update task items as required

Workflows are tracked through history tablesAllows users to see workflow progress

Creating Custom WorkflowsCreating Custom WorkflowsSharePoint Designer

for corporate Web designers

ActivitiesRe-use OOB/deployed activities

FormsAutogenerated Forms-ASPX

Deployment Workflow authored live against serverRuntime compilation

Development ModelWizard-based workflow designer

Visual Studio Workflow Designerfor professional developers

ActivitiesRe-use OOB/deployed activitiesCan author new activities

Forms Designed Forms-InfoPath-ASPX

DeploymentSolutions package generatedBox administrator installable

Development ModelVisual workflow designer

Creating a custom workflow with the SharePoint Designer

WSS v3 Master PagesWSS v3 Master Pages

Master Pages are a primary feature in ASP.NET 2.0Provides effective template solution for pages within siteContent page reuses chrome from master pageContent page fill in placeholders defined in master page

WSS v3 embraces ASP.NET master pagesWSS sites such as Team Site built using a standard master pageQuick and easy to change look and feel of entire siteEditing master page can be done with SharePoint Site Designer

How do master pages work in WSS?Each site page in WSS site “points” to a master pageEach WSS site has a Master Page Gallery (MPG)

Master Pages and WSS v3

WSS v3 Features FrameworkWSS v3 Features Framework

Innovation to enhance modular provisioningGroup logical elements into scenario-driven “features”Features can be add to and reused across site definitionsNew features can be activated in existing site to add functionalityFeatures scoped at web, site, web application, farm

‘Light-Up’ with Features

What’s New for Developers?What’s New for Developers?

ASP.NET 2.0 Web PartsEvent Handlers

Web Parts in WSS v3Web Parts in WSS v3

WSS V2 RuntimeWSS V2 Runtime

WSS Web PartsWSS Web Parts

WSS V3 RuntimeWSS V3 RuntimeASP.NET 2.0 RuntimeASP.NET 2.0 Runtime

ASP Web PartsASP Web PartsASP Web PartsASP Web Parts

Hybrid Web PartsHybrid Web Parts

WSS Web PartsWSS Web Parts

WSS Web PartsWSS Web Parts

ASP.NET 2.0 Web Parts ASP.NET 2.0 Web Parts in WSS v3in WSS v3

Web Parts derive from WebPart base classAll Web Part inherit common functionally

using System;using System.Web.UI;using System.Web.UI.WebControls.WebParts;

namespace LitwareWebParts {

public class HelloWorldWebPart : WebPart { protected override void OnPreRender(EventArgs e) { this.Title = "Litware Project Revenue"; }

protected override void RenderContents(HtmlTextWriter writer) { writer.Write("Hello, world"); } }}

ASP.NET 2.0 Web Parts in WSS v3

WSS v3 Event HandlersWSS v3 Event HandlersEvents architecture significantly improved

Events supported for lists, document libraries and content typesEvents supported for changes to list schema as well as itemsEvents supported at site collection and site levelEvents supported for incoming email messagesSupport for synchronous events and asynchronous eventsSynchronous events occur before the fact and are cancel-able

How do you get events to workCreate custom class inheriting a WSS receiver class e.g. SPItemEventReceiver or SPWebEventRecieverCompile class into assembly DLL and install in GACAdd event configuration by installing and activating a feature

WSS v3 Event Handlers

SummarySummaryWSS v3 as a solutions framework

Particularly suited for building scalable Web-enabled applicationsWSS "V3" provides out-of-box collaboration solutionsWSS "V3" provides platform for Office servers technology

Operating System Services

Database Search Workflow

ASP.NET (Web Parts, Personalization, Master Pages, Provider Model for navigation, security, etc.)

WSS "V3" Core Workspace Services

StorageRepositoryMetadataVersioningBackup

SecurityRights/RolesPluggable AuthPer ItemRights Trimming

MgmtAdmin UXDelegationProvisioningMonitoring

TopologyConfig MgmtFarm ServicesFeature PolicyExtranet

Site ModelRenderingTemplatesNavigationVisual Blueprint

APIsFields/Forms OM and SOAPEventsDeployment

Collaboration

ECM Portal Search BPM BI Project

Office 12 Solutions Built On WSS V3

My weblog: http://weblogs.asp.net/jan Sign up for Beta2: http://www.microsoft.com/office/preview/default.mspx