Survey							
                            
		                
		                * Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
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