EBZ308: Building Web Sites With MSCMS 2002 And VS.NET Scott Farquharson Program Manager Content Management Server Microsoft Corporation
Agenda
CMS Development Model
Demo – Templates and Postings Template Changes Object and Data Model
CMS VS.NET Integration
Wizard, Dialogs and Toolbars Demo – Show Integration Demo – Build a Template
Microsoft Content Management Server
Enterprise content management system Enables dynamic, data driven Web sites Template based publishing for non technical business users Integrated with Web development tools for rapid deployment High performance and scalability meet the requirements of the most demanding Web sites Part of the .NET Enterprise Server product family
CMS
CMS 2001
Quickly and efficiently build, deploy and maintain Internet, Intranet and Extranet web sites.
CMS 2002
… and leverage the power of VS.NET to build integrated, scaleable e-business solutions based on Web Services
CMS 2001 - Templates
Template ASP file stored in database
Two pass template update process
Must be based on ASP (vbscript) Ancillary template files (.inc etc) stored on file system Importing Template File produces Placeholder Definitions but now they need to be configured.
One Placeholder Server Control
CMS 2002 - Templates
All template code assets move to the file system
Template gallery items reference the T file on the file system
Based on ASP.NET or ASP One-pass template creation
Templates have schema information and can be “connected”
Redefinition of “Navigation” Templates
demo Basic CMS Constructs
CMS 2002 Definitions
Template Gallery Item / Objects (in CMS)
Template File (.NET ASPX File)
Talk to Placeholder Objects to render / author content
Placeholder Objects (in CMS)
Contain CMS Placeholder Server Controls Code to interact with CMS Publishing API, navigation, backend system, etc.
Placeholder Server Controls (.NET Server Controls)
Selected by Authors as the containers for content Connects Template Files and Placeholder Definitions
Holds on to the content Nice object model to interact with at run time
Placeholder Definitions (in CMS)
Defines the content schema (XML, HTML, etc) Properties (validation or not, bolding, etc)
CMS 2002 Data Model Request File System Template File (aspx file)
HTML Placeholder Server Control
CMS Server
ISAPI Filter
IIS: Template File + Posting
Template Gallery Item Template File
On Start Page: Auth Module, CMS Context (this.***) Navigation, CMS PAPI, ASPX Code …
(Run Time)
Custom Properties Ref to Placeholder Definition Collection
CMS Context Placeholder Object
Placeholder Definition
Placeholder Object
Placeholder Definition
Custom Placeholder Server Control
Content
Schema
CMS Database
CMS 2002 Data Model
(Design Time)
CMS Server
File System
Template Gallery Item
Template File (aspx file)
Template File On Start Page: Auth Module, CMS Context (this.***) Navigation, CMS PAPI, ASPX Code … HTML Placeholder Server Control
Custom Properties Ref to Placeholder Definition Collection
CMS Context Placeholder Definition Placeholder Definition
Custom Placeholder Server Control
Schema
CMS Database
CMS 2002 Object Model
Channel Custom Prop Defs
.NET Web Applications: CMS PAPI Entry Point CmsHttpContext
.NET/COM Win 32 Applications: PAPI Entry Point CMSApplicationContext
.ASP Web Applications: CMS API Entry Point Autosession
Posting Placeholder Object Custom Prop Values Template Gallery Template Custom Prop Defs Placeholder Defs Resource Gallery Resource Searches User Error (asp) Exceptions (.NET)
VS.NET Integration
CMS Enhancements in VS.NET
CMS VS.NET Projects Placeholder Definitions and Binding Custom Properties
Leverage Native Functionality include
VB, C# ASPX (Template) Development VS.NET Debugging
CMS VS.NET Projects
.NET Project
C#, VB.NET Web Apps and Web Services Project Existing Projects: “Enabled as CMS”
.ASP Projects
Empty Web Projects
Template Development
Template Gallery Explorer
Create, Rename, Update, Delete, Connected Templates Check In/Out Template “Wiring”
Custom Properties
Programmatic “Hints” for Code Name/Value Pairs (Text or Selection)
Text or List Define Type in the Template Define Value in the Posting
Placeholder Definitions
Each Template contain a set of Placeholder Definitions Each Definition is a data field in a posting Content Types: HTML, Image, XML, etc
Placeholder Server Ctrls
Drag and Drop Server Controls Bind Presentation to Content (Placeholder Definitions)
demo CMS VS.NET Integration
demo Building Templates
Template Recap
Create Template Gallery Item
Create Placeholder Definitions (to hold the content)
Create Template ASPX File
Connect to Template Gallery Item Add Placeholders Server Controls (to display content) Connect Placeholders Server Controls to Placeholder Definitions Add Code
Other Sessions
EBZ309 Building Personalized Web Sites, April 11, 4:45, Rm 217-219 EBZ307 Building Multilingual Web Sites with MSCMS 2002, April 12, 9:00, Rm R06 CLB310 Integrating MSCMS and SPS, April 12, 10:45, Rm La Louisiane C EBZ401 Building Web Services for MSCMS 2002, April 12 3:15, Rm R06
Questions?