Back to all posts

Converting/Integrating ASP.NET Application with DotNetNuke. Options available?

Posted on Mar 30, 2007

Posted in category:
Development
DNN

The question has appeared multiple times recently regarding methods to convert a standard ASP.NET application into a DotNetNuke module as well as options to “integrate” an existing ASP.NET website into DotNetNuke. This concept is very complicated for many individuals to follow and below I will discuss the options available to those looking to either integrate solutions or to create new DotNetNuke modules from existing applications.

NOTE: This information is provided as an overview and a listing of options available as I see them. This is NOT an all inclusive listing nor should this information be interpreted as a detailed instruction guide to complete integration or conversion.

Integration Options

To integrate an existing application into DotNetNuke you have essentially two options. Both of these options would result in NO conversion of the application and it would still be a separate unit from DotNetNuke.

Option 1 – Link to the application from IFrame

If you are looking to embed the functionality of the existing application within your DNN interface you can look at linking to the application via an IFrame module within your DNN site. This will show the page content within your DNN view. Now, to accomplish this goal you must have your site hosted somewhere, typically it is much better if it is hosted from a different domain, or at minimum a subdomain that is not your DNN installation. It is possible for you to integrate your existing application files into the code files for DotNetNuke however there is a large amount of effort required to ensure that no default DNN functionality is overwritten.

Option 2 – Link to application via menu items

You can set up a page in DNN that is actually just a link to an external resource, this would then take the user to your existing website. Again, as with option 1 you would need to ensure that the site is hosted in a proper location.

Integration is the simplest method to have a website containing both DNN and standard ASP.NET application functionality. However, this process does have it’s limitations. Using this method you cannot obtain any information regarding the current logged in user or use the roles engine provided within DNN. To achieve this level of ability you will need to convert your application to a DNN Module which will grant you full access to the DotNetNuke API.

Conversion Options

Since DotNetNuke is a development Framework based on ASP.NET the process to convert an application to a DNN module can be fairly simple, however, most of the difficulty is related to that of your original application's design. In DotNetNuke all pages within a specific module are created as .ascx user controls rather than .aspx pages. You also will have the full ability to use the DNN API and user authentication methods.

The process of converting is not something that can be explained within a simple blog posting, as you must consider the data access methods to determine if you will take the time to modify your application to follow the DNN DAL. As well as what role does user management and roles. In the most simple form, basic .aspx pages that have self-contained procedures can traditionally be converted to a user control very quickly without major modifications. To get started with conversion I fully recommend reading up on the DNN module development guides and taking a look at existing modules. And last but not least, contact someone that has done a conversion before if you have questions.