DotNetNuke provides significant capability straight out of the box. Just install and go. Sometimes, however, you may need to extend the base framework. DotNetNuke provides a variety of integration points — from HTTP modules to providers to custom modules. To take full advantage of the framework, it is important to understand some of the base services and APIs provided by DotNetNuke.
This chapter examines some of the core services provided by DotNetNuke. You can use these services from within your own code. Because most of the core services are built using the Provider design pattern, it's also possible to swap out the base functionality. If you need your events logged to a custom database or the Windows Event Logs, just create your own provider.
The second part of this chapter covers several HTTP modules that are installed with DotNetNuke. They provide features like Friendly URLs, Exception Management, and Users Online. Many of the providers installed with DotNetNuke use HTTP modules to hook into the request-processing pipeline. By examining the code used in the core HTTP modules, you can build your own custom extensions and use them in DotNetNuke as well as other ASP.NET applications.
The final section examines some of the core interfaces that you can implement in your own modules. These interfaces simplify the process of adding common features to your module, whether it is the module menu, searches, importing and exporting, or even custom upgrade logic. ...