DotNetNuke

18
The ideal platform for building professional websites with dynamic content and interactive features.

description

 

Transcript of DotNetNuke

Page 1: DotNetNuke

The ideal platform for building professional websites with

dynamic content and interactive features.

Page 2: DotNetNuke

DotNetNuke history

•Started by Shaun Walker of Perpetual Motion Interactive Systems

Inc. in Dec. 2002 as an extension to IBuySpy, initially called IBuySpy

Workshop.

•Microsoft have supported as a Ideal Content Management System.

Now consists of 40 core team developers.

•Open Source license (BSD). And 50,000 lines of code to expose

common functionality for CMS

Page 3: DotNetNuke

What is DotNetNuke

•DotNetNuke is an open-source Web Application Framework ideal for

creating and deploying projects such as commercial websites,

corporate intranets and extranets, online publishing portals, and

custom vertical applications.

•DotNetNuke is built on a Microsoft ASP.NET (VB.NET) platform, and

is easily installed and hosted.

•DotNetNuke is designed for use on the Microsoft ASP.NET 2.0, 3.0,

and 3.5 platforms using Visual Studio 2005, Visual Studio 2008, or

Visual Web Developer. 

•DotNetNuke based on common requirements of CMS likewise Map,

Blog, Online Store using latest technology Flex, Card Space,

Workflow, JQuery, Silverligh etc..

Page 4: DotNetNuke

What’s a Portal•Portal is a web system that provides the functions and features to

authenticate and identify the users and provide them with an easy,

interactive, personalized and user-customizable web-interface for

facilitating access to information and services that are of primary

relevance and interests to the users.

•Pages are used to organize content, but also have settings to

control various non-visual aspects such as meta tags, permissions,

start and end dates as well as optionally linking to other resources

such as files, url or other pages.

•Modules are dynamically loaded user controls. They inherit from

Entities.Modules.PortalModuleBase , so are aware of the current

portal, user and permissions and can render (or not) accordingly.

They each have a series of settings to control various metadata and

positioning.

•Portals provide a way for enterprises to provide a consistent look

and feel with access control and procedures for multiple

applications, which otherwise would have been different entities

altogether

•Popular Web Portals IGoogle, My.MSN.com, My.Yahoo.com

Page 5: DotNetNuke

Portal Architecture

1 Installation (1DB/Web)

Host

CarPoint.ninemsn.com.au

BikePoint.ninemsn.com.au

BoatPoint.ninemsn.com.au

Page 6: DotNetNuke

Key Features of DNN•Multi portal implementation

•Role-based Security - Full control over user permissions and access

privileges.

•Skinning, provides flexibility of design.

•Content is editable in-line and searchable.

•Various tools provided – traffic log reporting, file management, bulk

email,

•payment handling, vendor management.

•Fully customizable, Priority on security and Fully localized.

•Fully extensible and customizable and community support

•Easy installation and upgrade newer versions

•Enable multiple installs in a single DB

•Simply efficient and manageable with user friendliness. 

•Announcements - Ideal for news broadcasts, communication and

reminders.

Page 7: DotNetNuke

•User Manager - Add, edit, delete users, assign users to roles,

control user registration.

•Administration Tools - Customize your every aspect of your site any

way you want to!

•Search from site – Database search features

•Bulk Email - Conveniently send bulk email to employees, customers

or Newsletter.

•File Manager - Powerful tool that allows administrators to upload

files and images directly to the portal

•RSS content syndication

•Set of common functional inbuilt modules as well can develop and

install on based of custom functional requirements

•Data and site import export features

•Ajax and partial rendering concepts inbuilt available

Key Features of DNN

Page 8: DotNetNuke

Hosting Features of DNN•Enable multiple installs in a single DB

•User base can be shared or isolated across sites

•Shared admin tool constrained for current site

•Easily add-value with new language packs

•Skins / containers are additive

•Payment Gateway and SSL inbuilt configuration

Page 9: DotNetNuke

DNN Architecture

Stored Procedures

Tables

Functions

Core Services (VB.NET)Business Logic LayerData Providers

Common Classes

Logic and Security

SQL Server Data Provider

Profile and Localization

Web GatewayWeb Presentation Layer User Controls

Rendering Logic

HTML Rendering

Skinning

SQLServe

r

Page 10: DotNetNuke

•“A provider is simply a contract between an API and the Business

Logic/Data Abstraction Layer.”

•Whidbey Pattern for Extensibility

•Build new core features using this Pattern!

•Modules built using this pattern as well!

•Data Provider

•Rich Text Provider

•Logging Provider

•Scheduler Provider

•Authentication Provider

Provider Pattern

Page 11: DotNetNuke

Portal Architecture for Data Access

Abstract

Base Class

ConfigAccessDataProvider

SqlDataProvider

OracleDataProvider

Page 12: DotNetNuke

What is Module

•Written in .NET code, C#, VB.NET

•Promotes code reuse/Multi thread identifiable.

•Allows you to extend DotNetNuke.

•Customizable (using the module container)

•Compiled assemblies.

Page 13: DotNetNuke

Development Process

Setup

Project Creation in

Visual Studio(Developer)

Develop

Create your Custom

Functionality(Developer)

Pack

Package Module for Installation

with SQL script

(Developer)

Deploy

Install into Portal

(Admin)

Page 14: DotNetNuke

What is Skin?

You can write your own Skin Objects

Container Packages are the content around a Module

You can write Skin’s as ASCX to skip conversion Process

Design

Design Skin in

Any Editor

(Designer)

Replace

Mark Dynamic

Section in Skin

with special

PlaceHolders

(Designer)

Pack

Package into

Zip File for

Distribution

XML Menifest

(Designer)

Deploy

Install into

your portal

(Admin)

Page 15: DotNetNuke

DNN for programming features• Inbuilt Data caching functionality

•Abstract Class, interfaces and info/Controller/Collection Architecture

for performance

•URL Rewriting features

•HTTP Modules and Web Controls can be add or extend

•Rapid development with inbuilt library of overridable functions

• Interfaces that helps to communicate with modules

Imodulecommunicator, ISearchable, IActinable etc

•Relational table and Assemblies can be place by User Interface with

Module Installable Package

• Inbuilt List management features from user interface, it can be map

with custom modules

Page 16: DotNetNuke

•Admin as well front module interface with single set of package, So

development procedures can be well distribute

• Inherits the PortalModuleBase, provides values for Settings hash,

ModuleID, security, TabID from any ware in core or custom modules

•Help files and user manual can be provide on the same module

•Premium module can be develop that will be expired after

configured time duration

•Copy Page, reference of module (Module will appear for all pages of

portal), Page move, Skin/Container uniform for sub pages makes

DNN portal very rapid and flexible

•Upload size, file type, Up-gradation, Skin install permission etc tasks

can be control from administration area

DNN for programming features

Page 17: DotNetNuke

Wizards and Dynamic Portals•Use page preview as Admin

oMake modules that are visible only to Admin show red box

•Add functionality with custom modules

•Use providers for plug-in flexibilityoData access, membership, HTML edit, search, scheduling, logging,

friendly URLs

oDotNetNuke Community, Forum, Blog, resources documents

oDynamically Portal generation, Portals can be Import/Export with

contents

oTime based page/module visibility

oVendor and affiliates inbuilt tools

oUserDefinedTable Module allows user to define form with data

storage functionality

oDeferent authentication methods inbuilt available

Page 18: DotNetNuke

Questions