DotNetNuke Wiki


Module Development Best Practices

Modified on 2012/01/30 07:24 PM by cathal Categorized as Best practices
Note: this wiki also contains other pages on Best practices

Development»

The wiki already has a number of useful pages of content that demonstrate how to develop modules:


In addition it's highly recommended you consider the module development templates discussed in this blog . The blog entry also links to a short video explaining how to use these templates.

Packaging»

There are a number of ways to do packaging for modules such as Automated DotNetNuke Module Packaging MSBuild and Automated Module Packaging for DotNetNuke, as well as using the built in UI to create packages.

There is also extensive documentation on the Manifests format and all of it's capabilites available.

Do's»

  • Do use DotNetNuke.Common.Globals.NavigateURL when generating links

  • Do have your module controls inherit from DotNetNuke.Entities.Modules.PortalModuleBase

  • If your modules use jQuery, please use the relevant framework calls to ensure only one copy if loaded.

Don'ts»

  • Don't use Session variables. Session variables can cause issues when running in webfarm scenarios. Neither DotNetNuke or any of the core projects use session variables for this reason.

  • Don't trust user input - if you need to accept user input you should use the PortalSecurity InputFilter methods to filter the content as required.

Performance»

  • Consider setting the following attribute in your web.config file to improve speed for recompilation
    <compilation ... batch="false"> ...</compilation>


This article has a number of other optimizations you might consider.

Attend A Webinar
Start  Professional Edition Trial
Have Someone Contact Me

Like Us on Facebook Join our Network on LinkedIn Follow DNN Corporate on Twitter Follow DNN on Twitter

Advertisers

Sponsors

DotNetNuke Corporation

DotNetNuke (DNN) provides a suite of solutions that make designing, building and managing feature-rich sites and communities fast, easy and cost-effective. The DotNetNuke Platform CMS is the foundation for more than one million websites worldwide. DNN Social, our newest solution, enables businesses to create immersive, interactive communities. Thousands of organizations like True Value Hardware, Bose, Cornell University, Glacier Water, Dannon, Delphi, USAA, NASCAR, Northern Health and the City of Denver have leveraged DNN to deploy highly engaging business- critical websites. Our rapid growth in product sales and deployments resulted in DotNetNuke Corp. being named one of the fastest growing private companies in America by Inc. Magazine in 2011 and 2012.