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