views:

248

answers:

2

Short version:

How do I incorporate my custom ASP.NET/VB.NET stuff into a DNN site?

Long Version:

I'm learning about DotNetNuke. I haven't done much yet, but I'm spending a while analyzing the software, hoping to be able to use it for a very large upcoming project.

I've developed a lot of ASP.NET / VB.NET Codebehind reports that are on the old site that I'd like to bring over to the new site.

I'd like these reports to fall under the User Authentication System and the Navigation System of DotNetNuke, but I'd also like to have 100% of the functionality of the reports as they are now. I'd like all of my GridViews to populate with Data from my SqlDataSources and all of my event handling code (Button Clicks, etc) to continue to work.

Now if I had to guess, my first guess would be that I have to develop a module per report and include these modules in a single pane of a page within a portal.

My second guess would be that I copy these old ASPX files and their compiled code into the file structure of the portal and somehow steal from the DNN UAC & Nav Structure (Please not this!)

Am I on the right track? Please enlighten me!

Thank in advance for your time!

+3  A: 

Basically you're going to create new (empty) DNN modules and paste in your existing code. It's not that hard to convert a standalone ASPX page to a DNN module.

  1. You can get the current user's login name from the DNN environment
  2. DNN modules are User Controls (.ascx) and don't know anything about the rest of the page.

Once you have your modules, editors (users) will be able to drop into pages as desired. (If you don't need that capability, then you don't need DNN.)

Does that help?

egrunin
Perfect, thanks!
hamlin11
Although, regarding your last comment, I'd say that there are many instances where the CMS functionality may be important for 95% of the site, creating some 1-off modules that aren't designed to be dropped into more than 1 page seems reasonable to me (Example: Sales Reports). I agree with you mostly.
hamlin11
Oh, totally agree there.
egrunin
+2  A: 

Just follow one of the many custom DNN module tutorials and make your reporting module base which will be an .ascx control not an .aspx page

Then convert each of you report pages into .ascx and inherit from your reporting module base

TFD