Security

Develop a fully functional site with DotNetNuke

The open source DotNetNuke framework allows you to create a powerful Web application using an out-of-the-box solution. Find out how you can test drive a DotNetNuke installation.

The days of quickly building a Web application by marking up a few HTML pages are long gone. Now applications rely on backend data source and integrated security, and users expect powerful interfaces. The open source DotNetNuke framework allows you to create a powerful Web application using an out-of-the-box solution.

Find out what you get with DotNetNuke

DotNetNuke was originally developed as a content management system, but it has quickly evolved into a base for any type of Web application. Here's an idea of what you can expect with this framework:

Modules

DotNetNuke includes loads of features to build a robust application. A sampling of features via some of its basic modules include: Login, Announcements, Banners, Blog, Contacts, Discussion, Documents, News feeds, XML/XSL, Links, Image, and Text/HTML. These modules allow you to meet most application needs, as well as quickly add features to a site to meet user requirements. Modules are added to a site and edited via a Web-based management interface; this interface is used to work with all DotNetNuke features.

Security DotNetNuke includes a robust security architecture. The built-in security administration pages provide full control over who can view and edit resources. You may choose to have a public area available to any user, as well as secure areas that are only available to certain users. Skins You may control a DotNetNuke-based site's look and feel through skins; you can easily change a site's appearance by changing skins when necessary. Anyone who can create HTML may create a skin. A granular level of control is available where you may fine tune individual modules through CSS style sheets. Monitoring The daily monitoring of a Web application cannot be ignored. DotNetNuke provides event logging, so a snapshot of site activity and/or problems is readily available.

Extend the framework

The DotNetNuke platform is fully extensible. Modules provide you with the ability to extend DotNetNuke's functionality. DotNetNuke provides a pluggable framework that can be expanded by the development of modules; you can develop these modules with any .NET language.

You may choose to develop a custom module to fill a need. In addition, there are plenty of third-party modules available. The DotNetNuke Marketplace provides a central location for finding third-party add-ons available for purchase; you may also want to search online for free add-ons.

Test drive DotNetNuke

You can test drive a DotNetNuke installation. All you have to do is create an online demo account using a site name, description, username/password, and so forth. Once the demo site is created, you'll receive an e-mail confirmation, and then you may use the various features of the site to get a better feel for DotNetNuke. (Note: I found the demo site feature to be a bit slow, so you may want to keep this in mind before your test drive.)

Get DotNetNuke

The DotNetNuke software is free to use and distribute according to their BSD license. The current version is 4.8.0.

When working with new software, it can be confusing to determine what you need to install or download. As the DotNetNuke site describes, the downloads fall into one of the following categories:

  • Source Package: This includes everything, along with the full application source code.
  • Starter Kit Package: This includes files required to work with DotNetNuke within Visual Web Developer Express or Visual Studio 2005.
  • Install Package: This includes files required for a run-time deployment to a Web server.
  • Upgrade Package: This is available when upgrading from a previous version. This download has the files needed for an upgrade.
  • Documentation Package: This download, which includes all product documentation, is a good place to start. The documentation is impressive for an open source offering. It is available as a set of PDFs, and it provides details on everything from installation and setup to developing your own modules.

It's simple to install DotNetNuke if you follow the instructions included with the download. You can be up and running in less than an hour depending on your configuration. In addition, there are various hosting companies that provide DotNetNuke support, so you don't have to worry about installation, setup, and maintenance.

Save time with DotNetNuke

Building a Web application from the ground up is a time-consuming endeavor. DotNetNuke is a mature product with a large installed base and good support. It may not have everything you need out of the box, but it a good starting point. The modularized architecture allows you to use what you need and to take advantage of third-party add-ons or build your own.

Share your experiences

The idea of providing everything necessary to deliver a full-featured Web application is not new. In fact, the DotNetNuke name lends itself to open source offerings like PHP-Nuke and PostNuke that came before it. A great aspect of the open source approach to providing such a solution is the amount of testing done by the community.

I am working with my first Web application built using DotNetNuke; I'm sure I will learn a great deal along the way. If you have used DotNetNuke, I would like to hear about your feedback about what you liked and/or didn't like about it.

Tony Patton began his professional career as an application developer earning Java, VB, Lotus, and XML certifications to bolster his knowledge.

---------------------------------------------------------------------------------------

Get weekly development tips in your inbox TechRepublic's free Visual Studio Developer newsletter, delivered each Wednesday, contains useful tips and coding examples on topics such as Web services, ASP.NET, ADO.NET, and Visual Studio .NET. Automatically subscribe today!

About

Tony Patton has worn many hats over his 15+ years in the IT industry while witnessing many technologies come and go. He currently focuses on .NET and Web Development while trying to grasp the many facets of supporting such technologies in a productio...

23 comments
rohndawson
rohndawson

DotNetNuke offers measurable strategic advantages. It lowers the costs associated with managing Web sites, simplifies internal management processes, and makes your hosting packages more attractive and valuable. DotNetNuke integrates quickly with your infrastructure and has no licensing restrictions. ---------------- Rohn http://www.applydnn.com http://www.applydnn.com The Fastest, Easiest way to learn DotNetNuke! Free Trial Lessons!!

simonduz
simonduz

What others are not seeing is the capabilities of DNN in an intranet environment, where security is tweaked with auto logons, and Active Directory authentication. Applications for time tracking, project management, help desks, and custom reporting are the norm and accomplished with little effort using DNN as the backbone. It has been a blessing in disguise for small business, schools systems, and some enterprise companies saving them thousands(x10) of dollars in licensing, and development time.

keith
keith

Hello All, I have been using DNN as a CMS framework, a quick full featured site builder, and as a framework for custom module development (custom programming) for over 3 years now, and find it offers many usefull benefits: You can build out and skin a site using the built in components that deliver features that would cost far more if you assembled the site with custom code and components. You can deploy a framework with robust and customizable user and group management out of the box. Using the skins and a good graphic design, you can build a content management site where users of different abilities can easily be trained to update parts of the site without breaking the the design and style of the site. Purchasing or building new modules for added features is relatively inexpensive, and fairly easily deployed, resulting in web sites with features that a few years ago would have cost a fortune to develop. The DNN framework at this stage is stable, and once you understand how it works, you can deliver $25,000.00 + sites for fraction of the cost, bringing some pretty advanced features to a market with fewer resources (the SMB market). I would say that to properly deploy an effective commercial site you still need to engage the help of professionals, in design, and setup, but then, I think you need this for any commercial website, whether it is developed in VS, Dreamweaver, Expression, or whether you are using Joomla, Drupal, DotNetNuke or any other CMS system. Overall, I have been able to satisfy many clients by using DotNetNuke as a platform, and expect to add many more to that list. * I am largely technology agnostic and have worked with LAMP, ASP.NET, IIS, Joomla, Drupal among others, and currently work with and prefer ASP.NET and IIS +DNN by choice. Regards, Keith Waldron

Rod Wittmier
Rod Wittmier

Tony, Thanks for another great article. I've been using DNN for a couple of years and believe it should be viewed as one of many tools in a developers toolbox. DNN is great when you want to create a site that others will maintain the content on. Or where you want to leverage the existing modules versus creating a site based solely on what you create yourself. Rod

ZoomZoom
ZoomZoom

I've built several DNN site for myself and others and I love it. It seems to me to be much more of a framework for .Net developers to build on than a full CMS for amatuers (this IS a developers thread, right?). It is very flexible & the design of it helps you keep things modularized, which really helps in the long run with any project. The skins that you buy or build can be completely html or css or a mix of both. Whether or not a site is compliant is in the skins, not DNN itself. One thing to keep in mind is that all modules for it, 3rd party or DNN packaged, are rarely exactly what you want. Always plan to buy the source code and customize as needed. $100 for code to save yourself 10-20 hours of work is always a bargain, wouldn't you say?

Justin James
Justin James

... is that it is complex enough to have books from Wrox Press about it. It is not a "content management system", it is a "set of frameworks and libraries for content management, which are luckily pre-configured with a rational set of default settings." It just felt too much like overkill for the casual user, when I tried it out a while back. And the whole point of a CMS is so that casual users can get their content up on the Internet with minimal IT or developer involvement. J.Ja

mathomp3
mathomp3

The sheer beauty that is DNN is the fact its an open framework to use. I have built many DNN sites and each and every one of them very very different. Some were used as blogs, others as e-commerce sites, others for small organizations, and yet I also use it for super complex corporate site where it has company specific modules. I have built templated sites even now so when I have a new client I press 5 buttons and press update/complete and poof a blank template for a blog site, or e-commerce site, or sports fan site is done. I do my own custom skins and layouts all which are more compliant then visual studio will ever hope to code, yet its so easy to do. I use silverlight and ajax controls, and have full access to any .net control I want to use. There is nothing that is not possible. While it can be a bit of a rough start up for a developer to grasp the concept of a framework system like DNN. Once you get the hang of it there is nothing left to do but smile at all the work you don't have to do anymore. I use to spend hours per site coding Windows Authentication and forms authentication into my sites. Time and time again copy and paste, change this change that. No more I built one module installed it into the DNN framework via 3 buttons. Now all I have to do is select my login module from a drop down deside where I want it to show up, and press add. That is it. Now I know well just could have made a library / web control to do the same thing, true, but the den mother wanting to have her group sign in for special content doesn't know how to build a webpage that includes custom web controls. But, with DNN all she does is log in as an admin select login control from the menu and add's it to her home page. DNN puts a developer where they should be developing code, not maintaining the code in the website. I build it once and now all my users across the world, with varying levels of knowledge now all get to use my module without knowing one line of html.

whatsmystatus
whatsmystatus

One of the best things about DNN is that you can speed up the time it normally takes to deliver a comprehensive website solution to clients at a fraction of the cost. Another great benefit to the client is that in order to update content, add functionality and even change the look of the website they don't need any additional web design software (Dreamweaver, Front Page etc). You can feel good when you walk away after a project because you have enabled your clients to be self-sufficient and keep the content on their websites fresh. For a small web design firm or contractor both you and the client win. The only down side I have seen is the amount of time it takes to learn Dotnetnuke. Normally you have to read through a ton of documentation to figure out how to use it. Now there are even websites that offer video training to help solve that issue. One such site is http://www.dotnetnuketraining.com They offer some free content and if you want more in depth training to save time you can sign up. There are also many modules for just about any type of functionality you would want to add to your website. One of my favorite module developers is http://www.onyaktech.com/. They have over thirty modules that range from help desk, crm, to live website customer service. For a large list of providers you can go over to http://www.snowcovered.com or to http://marketplace.dotnetnuke.com/ to see Dotnetnuke approved modules. Most importantly have fun with DNN as you explore what it can do for you. Dan

Menopausal
Menopausal

I've developed school and church websites in DNN, using a hosting provider to avoid the hassles of installing/upgrading/etc. For a community-maintained environment, DNN rocks. I can give the PTO ladies control of their calendar and know they will never accidentally hose anything. Even if a school or church had 10 volunteers who had the expertise to update a traditional site, the savings in licensing alone is worth it. One school had to process a parent survey for the county every year; switching this to an online form that provided a simple interface (if you had no kids, only one radio button showed; if you said yes to having kids, the next question to appear asked how many; then a series of questions for each kid; etc.) that the school staff could export into Excel with one click-- saved them thousands in processing time! It really depends on what you want to use it for. For me, as a parent volunteer who had FrontPage experience and not much else-- to be able to create the interactive form as above, to add flash and video feeds, and to allow tightly granular control over who else could update-- it was perfect.

Chance11or
Chance11or

The books aren't for users they're for developers. Out of the "box" its a simple CMS. A user could add a page and then add content all through the web browser. If you're looking for workflow then a 3rd party CMS module can be purchased or you can write your own. Until then a user could use the built in forums, blog and wiki modules for content. I've used a dozen or so open source CMS/portal type packages over the last decade and DNN rocks.

md4
md4

In addition to all benefits that come with the core system, DotNetNuke can be adapted for mobile devices by using a custom module called mobiNuke.

Rod Wittmier
Rod Wittmier

I'm normally very quiet, and have learned to lead with gratitude and praise for others work. Justin...everything you write seems to always be looking for the negative. You really do not need to be a critique of others, try praising the work of others once in a while and praise will come to you as well. To those that run Tech Republic: How is it that you allow Justin's photo (header graphic) on most of the work that Tony submits? Tony deserves so much more respect than that! Let's be fair and recognize those providing great value to the readers of this site. Rod

phil
phil

Having just checked out some websites that have been built using DNN, I was concerned that none of them validated against HTML standards (I assume that the lack of CSS validation was down to the developers and not DNN). This does not give me any confidence to spend time trying the product. If anyone has any experience of using DNN *and* has produced a standards compliant site, I would love to hear from you!

mb.techrepublic
mb.techrepublic

...but I also admit I haven't used DNN myself. I have a client which has recently implemented its site in DNN (the technology work was done by a third party) and I couldn't help but draw comparisons with my "favourite" CMS, Joomla! - particularly since there seemed to be several areas that required work by the developer, which I felt should not have done so (sorry, I don't recall the details). I am under the impression that Joomla! (and its competitors) is more popular than DNN - thus having a large body of third party providers / implementers available - and is seemingly more straightforward to implement. If nothing else, Joomla! et al may be implemented on a wide range of platforms (PHP + MySQL & Apache if you want nice URI rewriting out of the box) and is/are being implemented by people very specifically because of the distributed content management / contribution facilities. Perhaps DNN is not intended to be a CMS, but simply a framework. My ha'penny worth. Mark

lastchip
lastchip

Justin's an OK guy. He helped me out with something a while back for which I will be forever grateful. As he has indicated in his own response to you, he has opinions about technology and the industry in general, that may differ from yours and perhaps mine. That's inevitable. What a hugely boring world it would be if we were all identical. As they say: "That's Life!"

Justin James
Justin James

Rod - Sorry if you feel that I am "negative". As Tony H. said, I have had plenty of things that I am quite positive about. Indeed, just yesterday I posted an EXTREMELY upbeat item, about PacketTrap (http://blogs.techrepublic.com.com/programming-and-development/?p=602). Right now, I am in a fairly negative mood regarding the industry as a whole (someone else mentioned that I've been a bit of a party pooper in another thread today or yesterday too). Basically, I am watching this industry preparing itself for a massive meltdown. I agree that Tony P. writes great articles. I don't think you'll ever see me knock one of them. In fact, other than the occassional mention of a minor mistake, I never see any of the readers outright knock Tony's articles. So I am not being critical of Tony or his work. What I *am* critical of are certain products and concepts and approaches. And Dot Net Nuke happens to be on that list of technologies that I have worked with and I am not super enthused about. I simply think it is a decent product that misses the mark in terms of its focus. I have to ask, though, why wait until now to provide feedback? I do not recall ever seeing a single comment (good or bad) from you before. Please feel free to challenge me in the forums or even in a private message. If you think I am unfairly knocking something, or throwing darts without offering useful suggestions, call me on it. If you look at the forums attached to posts, you'll see that I have one of the highest ratios of responses to readers of just about any blogger around, both here and elsewhere. I try to respond to everything that warrants a response. Anyone who has asked me to provide my ideas for improvement (as opposed to just criticism) has gotten it, as far as I can remember. So beleive me, if you think I am not discussing the upside, let me know, and I will be glad to either talk about the upside, or show why I think there isn't one. Regarding the picture, I have lobbied for that change as well! My picture is up there as the "host" of this blog space; "host" generally means that I watch the forums, make sure that nothing too nutty blows up, and make sure that all feedback gets to where it needs to go. I would love to see the individual author's photo on each of their pieces, like in a magazine, and it would not bother me in the slightest to see my picture either off of the masthead, or joined by the other folks who write in this space (Tony, Peter, Rex, etc.). It would help differentiate each author in the eyes of the reader if each of their pictures appeared in the articles, and help to establish each of their different identities. I am also sure that Tony, Rex, and the other people in this space would love to have a bit more distance from some of the things I have written here in the past; I know that not everything I've seen here is something I wanted my photo on, since it diverged greatly from my opinions. Indeed, Tony's items used to appear in the "Articles" section, which is where I personally feel that they belong. The decision to put his stuff in this particular space is outside of my hands though. I am glad that you hold his work in such high regard. He does write good articles about interesting items, even when I do not think that the item itself is the best tech out there. J.Ja

Tony Hopkinson
Tony Hopkinson

some of Tony's articles though, not so hot in my opinion. Some rules for avoiding nasty surprises. If you have an upside, check underneath it. If it's a gift horse, the front is the bit with the ears eye and and nose, and be wary of the teeth. Every silverlining has big f'ing cloud wrapped round it. I know lets discuss the positives of technology. ActiveX say. Pity someone didn't look at the downside of of the cloudy excrement coming out of that particular beast before it took off. Would have saved us a world of hurt.

Justin James
Justin James

I agree, everything that I have seen cut from the Nuke pattern (PHPNume, PostNuke, Dot Net Nuke, etc. and et al) contains certain design characteristics that I personally do not find attractive. J.Ja

Chance11or
Chance11or

Most skin developers don't update their designs and the DNN framework allows for the older skin models to still work allowing backwards compatibility. This means there are allot of bad skin designs still being sold. The good news, there are several skin developers that have released pure-CSS skins for DNN.

mdah
mdah

Having used DNN for a couple of sites about a year and half ago, I would say the lack of validation would be primary DNN. I started going through it so the site at least validated against HTML 4 Transitional but gave up ? too much work and it would have forked from the source code. Having looked at the code, most of it did look like stuff churned out of VS in default mode. Out of the box, the layout of master pages were mess of nested tables, I got quite nostalgic from when I started out. DNN is a complete MS beast, ASP.NET on IIS, starter packs for VS, so if you?re in an MS shop and can?t (or don?t want to) get tricksy and put PHP on IIS and the such like, then DNN is pretty much the only large scale open source option for you Setting up DNN and using it more or less as it comes is quite easy but for anything else deviating from the DNN view it was a complete pain.

Wave_Sailor
Wave_Sailor

If you like Joomla then you'll absolutely love Drupal! See www.drupal.org

Justin James
Justin James

I think a big part of that is tht DNN is pretty old. It dates back to the days when Visual Studio was spewing out some pretty foul HTML code. I am pretty sure that if that code was written today, it would be much better in terms of compliance. But now it has reams of legacy garbage in it. Bleh. For other systems, "legacy" means HTML 3. For an ASP.Net project, "legacy" means "non compliant". J.Ja