DotNetNuke v2 User Group Overview

Download Report

Transcript DotNetNuke v2 User Group Overview

DotNetNuke Overview

Stan Schultes







Enterprise architect / application developer
Conference speaker, mentor, trainer
Contributing Editor, Visual Studio Magazine
Founder - .NET Pub Club (netpubclub.net)
Microsoft MVP
www.vbnetexpert.com
[email protected]
Presentation Outline








Introduction & History
Installation
Technical Overview
Portal Features & Management
Project Organization & Internals
Private Assemblies
Customizing / Tips & Tricks
Project Futures
Web Portal Introduction
What is a Web Portal?
 Business Case
 Open Source Project
 DotNetNuke and Rainbow Projects
 Target Audiences:

Web Hosters
 Corporate Portal Developers

Project History & Relatives
IBuySpy web portal, IBS Workshop
 Rainbow (mid-’02) & DotNetNuke (Dec ’02)
 ASP.NET Starter Kits (www.asp.net):






Portal
Community
Commerce
Reports
Time Tracker
Installation Requirements
Current: v2.1.2
 Requires:








Win2K, WinXP, or Win2K3
IIS installed and operational
.NET Framework V1.1
Access or SQL Server 2000 / MSDE
SMTP configured if you want to use mail
VS.NET 2003, or custom build environment (no
SDK version available today)
DNN is written in VB.NET, but you can write
modules (.DLLs) in any .NET language
Demo – DNN Installation

Installation Process:







Unzip the code to a directory, give ASPNET/Network Service
account permissions
Create a virtual directory
[ Create an empty SQL database, set up DB account ]
Edit web.config
Browse to http://localhost/vdir
Change Host and Admin passwords!
Upgrade Process:



Back up your current configuration
Unzip the new code into the directory structure
Browse to the vdir
What’s New in Version 2








Improved admin user interface
Data Provider Model
Business Logic Layer
Skinning
Recycle Bin
Scheduler
Exception Management
Backward compatibility for modules using the
old data architecture
Technical Overview








Framework application
Modular construction
Dynamically loaded user controls
Data access layer uses Provider model
Business logic layer
Online portal configuration by role
Multi-portal: parent or child configuration
Portals are skinnable
Demo – DNN Features
Portal Management
 Tabs & Modules
 Roles & Users
 Files & File Uploads
 Child Portals

Managing Portals







Host and Admin Accounts
Hosting Configuration, Modules
Multiple Portals, Aliases
Forms Authentication vs. Windows
Authentication
Service Directory: Vendors & Banner
Advertising
Chargeout process
Bulk email (portal users)
Tabs & Modules
Tabs = portal organizational units
 Modules = information containers
 Module Options
 Info access controlled by Roles and
Users

Roles & Users
Roles & Users - created by Admin role
 Role usage is up to you
 User registration: none, private, public,
verified
 Specify required registration fields:


Admin  User Accounts, edit mode
Files and File Uploads







Shared directory per portal (\portals\n\)
File security: there isn’t any by default!
Set uploadable file types on Host  Host
Settings
Set File Upload Roles on Admin  File
Manager
Use the Sync link on File Manager if you
manually copy files into directories
Decompress Zip files checkbox
Host file uploads vs. portal file uploads
DNN in Design Mode
DNN v2 built with VS.NET 2003
 Change .sln and .webinfo file if not
default DotNetNuke vdir
 Release mode vs. Debug mode
 All standard modules are integrated in
.sln
 Build private modules in any language –
as separate project.

Project Organization

Directory structure:
Admin – user controls for all system pages
 Components – business logic layer
 Controls – title, header, footer controls
 DesktopModules – module addins
 Portal\n\ – content directories by portal
 Providers – data access providers

Portal Internals
web.config
 Global.asax
 HTTP Handler and portal aliases
 Default.aspx (DesktopDefault redirects)
 Everything else is .ascx (user controls)
 Controls: SolPart menu, FreeTextBox,
SharpZipLib

Data Access / Business Logic
Data access based on a Provider model
 Databases supported:

Access (default), SQL Server 2000/MSDE
 (future) mySQL, Oracle


Business Logic Layer:
Abstracts the data layer from the portal
 Custom Business Object (CBO) helper

DotNetNuke Architecture
Making the Portal Your Own
Containers
 DNN V2 is now skinnable by portal!
 CSS Style sheet
 Modify the core code
 Integrate custom modules
 Build your own private assemblies

Demo - Customization
CSS Style Sheet
 Containers
 Skinning

Demo – Install a private assy





Build the assembly separately
Package as .zip with .dnn manifest file
Upload to portal from Host account
Configure the module
Four examples are provided:




Page Title
Survey
Users Online
Whois
Building a Private Assembly








Find a similar standard module and copy it
Database tables & SPs
Data component
Create user controls for display & editing
Style sheet additions
Project integration options
PA installation files & docs
Article in Dec 2003 Visual Studio Magazine
DNN Tips & Tricks
Try to minimize core customization
 When upgrading – compare codebases
& eliminate obsolete code
 Use VSS for code & build control
 Interactions between logins w/ multiple
instances
 Watch forums & bug lists for fixes (see
#1 above)

Project Futures








Localization – static / dynamic
Site Search
Friendly URLs
Private Assembly Architecture
Windows Authentication / Tabs SSL
Enhanced File Management / Security
Hierarchical portals
Web Farm Support
Questions?
Resources








www.dotnetnuke.com
http://www.fawcette.com/vsm/2003_12/maga
zine/columns/gettingstarted/
www.asp.net/forums
www.gotdotnet.com/community/workspaces
DNN ML: www.cyberhuis.com
DNN XXL: arkadic.healthship.com
www.asp.net
www.rainbowportal.net