My company has a custom support site written in ASP.NET 1.1 that they would like me to add several features to. The site contains a variety of content that a site administrator manages using a custom tool also written in ASP.NET 1.1. As I see it, I basically have 2 options. The first is to build the new features into the custom application. The second is to completely rebuild the site using a CMS. Some people in the company are pushing for rebuilding using SharePoint. I however would like to explore some of the open source CMS offerings first before going that route, which has brought me to DNN. On the surface, DNN seems to be exactly what we need in terms of content management capabilities, and many of the standard modules seem like good fits to replace much of the existing functionality (announcements, downloads, links, login, register, user account, etc.).
Before I can recommend using DNN though, I need to understand how easy or difficult it would be to extend the standard modules to handle some specific requirements we have. I've been poking around on the DNN site for a couple of days now, and it isn't yet clear to me if it's possible to extend standard modules, or in the case you need to do something slightly different, is your only option to ditch the standard module and instead find a replacement or write your own? For example, we need to collect a couple more pieces of information about a user when they register with the site than what the standard User Account module collects. Can the extra fields be added to the database and then bound to new controls that are added to the form? If so, how is this accomplished? Is it done by extending the standard module and plugging in what you need? Or is it done by taking a copy of the standard module code, modifying it as needed, and then basically having a new custom module that lives independently of the original?
I would really appreciate hearing from some developers out there who have real world experience implementing sites in DNN where they had to make some significant customization to what DNN provided out-of-the-box. Did you find that the DNN architecture made it possible for you to provide the customizations you needed, while not causing you too many headaches? How about if you ever upgraded your site to a newer release of DNN, what was that experience like? I really like what I've seen so far about DNN, and I would love to be able to recommend it to my boss, but I need to be sure that if we decide to go down this road, and we get 80% of what we need "for free", that building the other 20% is possible and won't leave us with a hacked up DNN site that won't upgrade.