Introduction to DotNetNuke Scott McCulloch DotNetNuke Core Team

download Introduction to DotNetNuke Scott McCulloch DotNetNuke Core Team

of 34

  • date post

    27-Dec-2015
  • Category

    Documents

  • view

    220
  • download

    4

Embed Size (px)

Transcript of Introduction to DotNetNuke Scott McCulloch DotNetNuke Core Team

  • Slide 1
  • Introduction to DotNetNuke Scott McCulloch DotNetNuke Core Team www.smcculloch.net
  • Slide 2
  • IBUYSPY Developed by Vertigo Software to showcase ASP.NET 1.0 Developed by Vertigo Software to showcase ASP.NET 1.0 VB.Net/C# VB.Net/C# Dynamic Site Layout using User Controls Dynamic Site Layout using User Controls Portal Module Implementation Portal Module Implementation Portal Configuration using Sql Server Portal Configuration using Sql Server Role-Based Security Role-Based Security Great Starting Point! Great Starting Point!
  • Slide 3
  • IBUYSPY - Problems Support/Enhancements No longer being worked on! (www.aspsmith.com/ibs) Support/Enhancements No longer being worked on! (www.aspsmith.com/ibs) Missing Features Missing Features Multiple Communities Portal Management Customisation Customisation Module Development Graphical Changes Core Extensibility
  • Slide 4
  • DotNetNuke
  • Slide 5
  • The DotNetNuke Project Started by Shaun Walker of Perpetual Motion Interactive Systems Inc. in Jan. 2002 as an extension to IBuySpy, initially called IBuySpy Workshop. Started by Shaun Walker of Perpetual Motion Interactive Systems Inc. in Jan. 2002 as an extension to IBuySpy, initially called IBuySpy Workshop. 105,538 Registered Users (18 th Nov, 2004) 105,538 Registered Users (18 th Nov, 2004) Now consists of 30 core team developers. Now consists of 30 core team developers. Large community support, ASP.NET forums. Large community support, ASP.NET forums. Written in VB.NET Written in VB.NET Open Source license. Open Source license. 10,000 to over 50,000 lines of code 10,000 to over 50,000 lines of code
  • Slide 6
  • Timeline 01/1/2002 - IBS Release 24/12/2002 Released on ASP.Net forums Shaun Walker Perpetual Motion (Canada) -IBuySpy Workshop 15/3/2003 15/5/2003 -Re-branded as DotNetNuke (1.05 1.08) -Private Assemblies 1/9/2003 DNN 1.10 (x) -Core team formed world-wide -Stable release with some security patches
  • Slide 7
  • Timeline (cont.) 23/3/2004 DNN 2.0 Complete Re-Write 1500+ Source Control Transactions/Month -Provider Pattern for Data Access -Skinning Engine 4/6/2004 DNN 2.1 -Providers for Scheduler/Logging/RichText -Crucial bug fixes
  • Slide 8
  • Timeline (cont.) The Future -Multi-Lingual (2.2) -Friendly Urls (2.2) -Search (2.2) -Whidbey Providers (2.2) -www.dotnetnuke.com (roadmap) www.dotnetnuke.com
  • Slide 9
  • More Features!
  • Slide 10
  • Completing the Portal Implementation Multiple Portals per Installation Multiple Portals per Installation Extended Basic Features Extended Basic Features User Membership, Role Membership, Content Authoring Implement Advanced Features Implement Advanced Features Search Engine Optimization, Banner Advertising, Affiliate Relationship Management, and Hosting
  • Slide 11
  • Portal Architecture 1 Installation (1DB/Web) Host CarPoint.ninemsn.com.au BikePoint.ninemsn.com.au BoatPoint.ninemsn.com.au
  • Slide 12
  • Core Extensibility
  • Slide 13
  • Provider Pattern a provider is simply a contract between an API and the Business Logic/Data Abstraction Layer. a provider is simply a contract between an API and the Business Logic/Data Abstraction Layer. Whidbey Pattern for Extensibility Whidbey Pattern for Extensibility Build new core features using this Pattern! Build new core features using this Pattern! Modules built using this pattern as well! Modules built using this pattern as well!
  • Slide 14
  • Portal Architecture for Data Access Abstract Base Class Config AccessDataProvider SqlDataProvider OracleDataProvider
  • Slide 15
  • Provider Pattern Everywhere Data Provider Data Provider Rich Text Provider Rich Text Provider Logging Provider Logging Provider Scheduler Provider Scheduler Provider Whidbey Providers (Membership, Role, Profile) coming soon! Whidbey Providers (Membership, Role, Profile) coming soon! Everywhere customisation *may* occur! Everywhere customisation *may* occur!
  • Slide 16
  • Skinning
  • Slide 17
  • The Skinning 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 (Designer) Deploy Install into your portal (Admin)
  • Slide 18
  • Setup 1. Design HTML in any editor Note: Normal Design as you would design any website Note: Normal Design as you would design any website Design Design Skin in Any Editor (Designer)
  • Slide 19
  • Replace 2. Mark sections to inject module (ContentPane, LeftPane) 3. Mark dynamic functionality based on Skin Objects ([Title], [Menu], [Login]) Note: You can write your own Skin Objects! (Not Covered) Note: You can write your own Skin Objects! (Not Covered) Replace Mark Dynamic Section in Skin with special PlaceHolders (Designer)
  • Slide 20
  • Pack 4. Pack up all files into a Zip Pack Package into Zip File for Distribution (Designer)
  • Slide 21
  • Setup 5. Install through File Manager as Skin Package Note: You can apply at Host, Portal, Page Note: You can apply at Host, Portal, Page Deploy Install into your portal (Admin)
  • Slide 22
  • Further Notes You can write your own Skin Objects (e.g. replacement menus) You can write your own Skin Objects (e.g. replacement menus) Container Packages are the content around a Module Container Packages are the content around a Module You can write Skins as ASCX to skip conversion Process You can write Skins as ASCX to skip conversion Process
  • Slide 23
  • More Information Skinning Guide (/Documentation) Skinning Guide (/Documentation) Skinning Contest (http://www.dotnetnuke.com/contest ) Skinning Contest (http://www.dotnetnuke.com/contest )http://www.dotnetnuke.com/contest Skin Object Example (/DesktopModules/PageTitle/) Skin Object Example (/DesktopModules/PageTitle/) Free/Buy Skins (http://www.dnnskins.com, http://www.snowcovered.com ) Free/Buy Skins (http://www.dnnskins.com, http://www.snowcovered.com )http://www.dnnskins.com http://www.snowcovered.comhttp://www.dnnskins.com http://www.snowcovered.com
  • Slide 24
  • Module Development
  • Slide 25
  • What are Modules? Written in.NET code, C#, VB.NET Written in.NET code, C#, VB.NET Promotes code reuse. Promotes code reuse. Allows you to extend DotNetNuke. Allows you to extend DotNetNuke. Customizable (using the module container) Customizable (using the module container) Compiled assemblies. Compiled assemblies.
  • Slide 26
  • Development Process Setup Initial Project Creation in Visual Studio (Developer) Develop Create your Custom Functionality (Developer) Pack Package Module for Installation (Developer) Deploy Install into Portal (Admin)
  • Slide 27
  • Setup Create a new Class Project (/DesktopModules) Create a new Class Project (/DesktopModules) Compilation Path (../../bin/) Compilation Path (../../bin/) Name Project Appropriately (CompanyName.Module) Name Project Appropriately (CompanyName.Module) Reference DotNetNuke Project Reference DotNetNuke Project Setup Initial Project Creation in Visual Studio (Developer)
  • Slide 28
  • Develop Add User Controls to Project Add User Controls to Project User Controls must Implement PortalModuleControl User Controls must Implement PortalModuleControl Develop as Normal Develop as Normal Register Controls through Portal for Debugging Register Controls through Portal for Debugging Develop Create your Custom Functionality (Developer)
  • Slide 29
  • Pack Write Xml Manifest File (ModuleName.dnn) Write Xml Manifest File (ModuleName.dnn) Package into Zip File Package into Zip File Distribute Distribute Pack Package Module for Installation (Developer)
  • Slide 30
  • Deploy Install to your portal through File Manager Install to your portal through File Manager Add to any page (Module will appear in list now) Add to any page (Module will appear in list now) Deploy Install into Portal (Admin)
  • Slide 31
  • More Information Module Developers Guide (/Documentation) Module Developers Guide (/Documentation) www.smcculloch.net (Sample Modules/CodeSmith Templates) www.smcculloch.net (Sample Modules/CodeSmith Templates) www.smcculloch.net www.dotnetnuke.dk (Tutorials/Dev Environment) www.dotnetnuke.dk (Tutorials/Dev Environment) www.dotnetnuke.dk dnnjungle.vmasanas.net (Tutorials/VS.NET Enterprise Templates) dnnjungle.vmasanas.net (Tutorials/VS.NET Enterprise Templates) dnnjungle.vmasanas.net
  • Slide 32
  • Conclusion Open Source Application with Strong Development Community Open Source Application with Strong Development Community Extensible through Provider Pattern Extensible through Provider Pattern Customisable through Skinning & Modules Customisable through Skinning & Modules Off the Shelf Portal Application at the right price! Off the Shelf Portal Application at the right price!
  • Slide 33
  • Questions?
  • Slide 34
  • www.DotNetNuke.com Scott McCulloch DotNetNuke Core Team www.smcculloch.net smcculloch@iinet.net.au