Tech Insights
Kasun Chathuranga Perera
January 25, 2021

What is the DNN Platform (DotNetNuke)?

What is the DNN Platform (DotNetNuke)?

DNN Platform, formerly called DotNetNuke Community Edition, is a free, open source content management system.

The DNN Platform isbuilt on the .NET framework; it is designed to be easy to use, without aneed of extensive programming knowledge. Features of the DNN Platform includedesign skins that allow the appearance of a website to be changedeasily and the ability to incorporate third-party modules to add additional functionalities. Because the CMS supports Multi-tenancy, multiple sites can be built on the same architecture.

Using DotNetNuke CMS For YourNeeds

If you are a web developer, or a company looking for a way to streamline your web presence while giving your UX, UI and marketing efforts a nuclear injection, DotNetNuke (alsoknown as Evoq DNN or just DNN) might just be the answer. It’s even suggested that using DNN as your CMS will support whether you are building websites forothers or maintaining one for yourself. Developers, clients, users andcustomers tend to love this platform compared to other platforms, in terms ofits flexibility and potential.

DotNetNuke is More Powerful thanWordPress

While it was generally thought that WordPress is easier to install, that sentiment flew out the window when DNN introduced the Evoq Cloud Edition. While there are some advantages tousing WP for companies who, for example, like to switch up their themes on aregular basis and install plugins, WP is still basically a blogging platform with some web extensions added. Even though there are thousands of plugins available for both platforms, DNN is easier to customise with a wide range of integrations. Another huge difference is that navigating in WP still requires aback-and-forth from the dashboard, whereas with DNN, you are making changes directly on to the page: its tool bar is integrated into the browser, so youdon’t have to leave the actual page to make changes.

Why Choose DotNetNuke as yourCMS?

While there are enough choices of decent Content Management Systems out there, DNN has some clear advantages for developers on the Microsoft ASP.NET framework. You will probably want to use DNN for:

1. Simple content editing andcreation

First thing’s first. Agreat CMS needs to make content management easy, and DotNetNuke does just that.Whether your a team of one or a team of managers, editors, and writers, DNNgives its users a robust rich text editor and many options to create great content. For larger teams, content work flows can be put into place for permission setting and approval management.

2. Advanced features

The features of DotNetNuke, whether out of the box or with third party modules, can be extremely powerful for businesses of all sizes. User management, advertisement management, email marketing, document management, multilingual ability, blog management, and more are included to help marketing and IT teams manage their website.

3. Unmatched security

DotNetNuke provides extremely thorough security. Each user group is provided its own permissions,and all users can be sorted into these groups based upon what the operations require. As opposed to other CMSs that may require you to install a third party(and probably weak) application, DotNetNuke has a security model built into the CMS architecture. This makes DNN one of the most secure platforms for websites on the market.

4. Ultimate platform flexibility

DNN, because it is basedon ASP.NET, is extremely extensible with pre-made or custom modules. It can beeasily integrated with virtually any business application, especially those inthe Microsoft stack of Dynamics (GP, CRM, etc.).

5. Website speed

DotNetNuke’s efficient code base ensures that websites run quickly to provide a great user experience for all of your site visitors.

6. Based in portals

The portal based architecture of DotNetNuke allows your business to run many sites on just oneDNN installation. This can be beneficial if you need to run an intranet as wellas your website, or multiple portals for individual departments.

7. Great for applications orintranets

Because of its flexible code base and architecture, DotNetNuke can be a great host for web apps or intranets. This is helpful for companies that want to manage many different ITassets on one easy platform.

8. Well supported

DotNetNuke Corporation offers central technical support. Also, because DNN is open source, there are many partners that support it all over the world. This makes your investment in DotNetNuke a safe one for many years to come.

9. Reduced cost

Based on your company needs, whatever version of DNN you choose, it will be a significant cost savingventure over other options (especially the custom ones that cost many tens of thousands of dollars to complete a project).

10. Proven and established

DotNetNuke has been used for 700,000 websites over many years, including for major companies and organizations such as NASA, Lockheed Martin, Verizon, USAA, WeightWatchers, Bose, NASCAR,Cornell University, Dannon, Kia, Hilton, Whirlpool, Chrysler, Motorola, andmore.

DNN Resources

All the resources for the open source DNN Platform can be found in the following links.

·        DNN resources page

·        DNN DocumentationCentre

·        Subscribe to DNNDigest

·        DNN Store

·        Nightly Builds

DNN Community

The DNN Community is notas wide spread as other tech communities. And the skill set is not widelyavailable. But there are a set of skilled professionals and MVPs in thecommunity and a few references have been given in the following.

·        DNN community

·        DNN Forum

·        MVPs

DotNetNuke Development

The DotNetNuke Framework is an open-source CMS on the Microsoft ASP.NET platform. Itsversatility is unmatched among even its toughest competition, as it offersliterally thousands of templates, themes, and skins from which to choose. Becauseit is open source, you also have the ability to integrate custom modulesand plugins to suit your specific needs. There are built in modules in the DNNplatform, and you can develop new modules using ASP.NET framework and installto your DNN website as well. Many custom modules have been developed by thedevelopers and can be freely downloaded from following links.

·        GitHub DNNcommunity

·        CodePlex Archive

Getting Started with DNN

DNN is a free opensource .NET content management system (CMS). Like any CMS, users can easilymanage site content and users, as well as develop and install custom themes andextensions (similar to WordPress “plugins”).

The system requirementsfor DNN are as follows:

Operating Systems

·        Windows 8,8.1, 10

·        WindowsServer 2008 R2, 2012 R2

.NET Framework

·        4.5.1+

Web Server

·        MicrosoftIIS 7.5, 8.0, 8.5, 10

Database Server

·        MicrosoftSQL Server 2008 R2, 2008 Express R2, 2012, 2012 Express, 2014, 2014 Express,2016 (for DNN 8.0.4+)

·        MicrosoftAzure SQL Database

In this tutorial, I amusing Windows 10, Microsoft IIS 10, Microsoft SQL Server 2014 Express and DNN Platform9, and I am assuming you already have your database server set up. If yoursystem is different (e.g. Microsoft Azure SQL Database), the installationprocess below is still the same.

1. Download the Install package

Download the Install.zippackage for the latest release from github.

You can also downloadthe latest install package directly from DNN’s website – be sure to scroll down and select the InstallPackage download option.

2. Extract the files

Go to your Downloadsfolder and find the zip file. Right click the zip file, select Properties,then check Unblock and click Apply. This marks the file astrusted and ensures all the content is extracted and accessible.

Next, create thedirectory for the website. I am using D:\Tutorials\DnnTutorial. Now copy andpaste all the extracted files and folders from the zip file into your newwebsite directory.

3. Configure IIS

To install IIS (or toconfirm you have the appropriate settings configured), select Turn WindowsFeatures on/off in the Control Panel, and turn on the following optionsbelow Internet Information Services:

·        WebManagement Tools

o   IIS 6 Management Compatibility

§ IIS 6Management Console

§ IISMetabase and IIS 6 configuration compatibility

o   IIS Management Console

·        World WideWeb Services

o   Application Development Features

§ .NETExtensibility 3.5

§ .NETExtensibility 4.6

§ ASP.NET3.5

§ ASP.NET4.6

§ ISAPIExtensions

§ ISAPIFilters

§ WebSocketProtocol

o   Common HTTP Features

§ DefaultContent

§ StaticContent

·        Health and Diagnostics

o   Custom Logging

·        PerformanceFeatures

o   Dynamic Content Compression

o   Static Content Compression

·        Security

o   Basic Authentication

o   Request Filtering

o   Windows Authentication

Once IIS is configured,you need to create the site. Open IIS, right click Sites and select AddWebsite.

Use dnndev.me for the Site and Host names. Enter or select the website directory you created in step 2 for the Physical Path. Click OK.

4. Grant File Permissions

You may or may not have noticed that an Application Pool was automatically created with the same nameas the website we just created. We need to grant this Application Pool access to our website directory.

1. In File Explorer goto your website directory, right click the folder, select Properties,select the Security tab, then click Edit.

2. Click Add

3. Now we need to enterthe name of the Application Pool – in our case, we need to enter iisapppool\dnndev.me. Please note that there are three p’s in that name.

4. Click Check Nameto ensure it resolves to our Application Pool dnndev.me, then click OK.(If you are on a domain, you may need to change the Location field fromthe domain to your computer).

5. After that, select dnndev.mefrom the Groups and Users list, check Modify permissions, andclick Apply. Close out of the remaining windows.

5. Setup the Database

Now we are going tocreate a new database and login credentials. Open up your database server,right click on Databases and select New Database. Enter your DatabaseName and Owner, then click OK. You will need the DatabaseName later in this step and step 6.

After creating the database, expand Security, right click on Logins and select NewLogin. On the General page, enter a new Login Name (I like touse straightforward login names so it is clear which system or application isusing it), select SQL Authentication, and enter a Password.Please note, you will need to remember the Login Name and Password for step 6.

Then select the UserMapping page on the left – check the name of the database we just created and set the Default Schema to dbo, then check db_owner andpublic options for Database role memberships. Click OK.

6. Run DNN Installation Wizard

We’re almost done! Nowopen a browser and go to your site (http://dnndev.me). You should be redirected automatically to theInstallation Wizard.

Enter the desiredsettings in the Administrative and Website Informationsections. In the Database Information section, use the followingvalues:

·        DatabaseSetup: Custom

·        DatabaseType: SQL Server/SQL Server Express Database

·        Server Name:.\SQLExpress (if you are using a professional version of SQL Server orAzure, enter the appropriate server name instead)

·        Database Name:DnnTutorial (the Database Name created in step 5)

·        Security: UserDefined

·        DatabaseUsername: web_dnntutorial (The Login name created in step 5)

·        DatabasePassword: (The login password created in step 5)

·        Run DatabaseAs: Database Owner (make sure this is checked)

Now click Continueto run the Installation Wizard.

Once the InstallationWizard is complete, click Visit Website – you should be redirected andautomatically logged in (using the admin credentials you specified earlier instep 6).

Hope you learnedsomething new with this blog post!