Geeks With Blogs

News My Blog has been MOVED to https://mfreidge.wordpress.com
Michael Freidgeim's OLD Blog My Blog has been MOVED to https://mfreidge.wordpress.com

I am using Web Application Project(WAP) for development of DotNetNuke modules.

The general approach is discussed in DNN forum thread here.

 

My VS solution consists of main WAP Project and one or more User Control Libraries similar to described in Tutorial 6: Creating and Using User Control Libraries.

The main WAP Project basically includes one DNNDebug.aspx  file (as well as web.config and global.asax),  that allows me to load and test my user controls.

The User Control Libraries(DNN modules) are physically located in DesktopModules subfolder of the main project, so I  don’t need to copy ascx files from control library to main project subfolders as it is recommended in  the Tutorial.

 

Main WAP project has references to module projects, which ensures that module DLLs are copied to main project bin folder by VS.

 

The using simple main WAP project has an advantage compare to Vladan’s BlankModule approach http://vladan.strigo.net/Default.aspx?tabid=78 - The solution can use Development Web Server and “Edit and Continue” will work!

 

When I am satisfied with testing and debugging of a new module with DNNDebug.aspx, the next step is to copy the module to normal DNN Web Site Project. It is required to copy module DLL to bin directory and ASCX files to WSP DesktopModules subfolder. I also need to remove CodeBehind attribute From Ascx files, because I do not want copy source code ascx.vb files to the WSP project. The procedure how to set the project to do it automatically described in the thread “How to use WAP User Control Libraries from Web Site Project and my blog  article “Utility to Remove CodeBehind attribute From Ascx files .   

Posted on Tuesday, August 8, 2006 9:04 PM DotNetNuke , ASP.NET | Back to top


Comments on this post: Using Web Application Project(WAP) for development of DotNetNuke modules with Edit and Continue Support

# re: Using Web Application Project(WAP) for development of DotNetNuke modules with Edit and Continue Support
Requesting Gravatar...
I would like to ask a question.

In your WAP model, how do you reference to the DNN controls such as ModuleAudit, Address controls and so forth? I seems only adding referene to DotNetNuke.dll cannot acheive this purpose.

Thanks.
Left by Clement on Aug 15, 2006 6:57 PM

# re: Using Web Application Project(WAP) for development of DotNetNuke modules with Edit and Continue Support
Requesting Gravatar...
Clement,
I didn't reference the DNN controls from the WAP modules that I created so far. I believe that approach similar to "HowTo: Use DNN User controls with your modules"http://vladan.strigo.net/Default.aspx?tabid=81 should work.
Left by Michael Freidgeim on Aug 16, 2006 10:04 AM

# re: Using Web Application Project(WAP) for development of DotNetNuke modules with Edit and Continue Support
Requesting Gravatar...
Hi Michael,

although having Edit&Continue option is great I still don't like the fact that there is allot of manual work to your approach.

Did you try configuring the module project with my way, and then add DNNDebug.aspx to it's root and in cases where you need Edit&Continue, just quickly change the project start page in project settings? And also later when you are done, and want to test in DNN just revert it back as it was?

I still don't like the fuss, but maybe this is a win-win situation for both ideas?

kind regards,
Vladan Strigo
Left by Vladan Strigo on Aug 16, 2006 7:19 PM

# re: Using Web Application Project(WAP) for development of DotNetNuke modules with Edit and Continue Support
Requesting Gravatar...
Hi Vladan,
Thank you for your comment.
There is no much manual work in my approach- just different settings for projects and solutions(Probably I should document the process better).

Ideally we should find a way to easily switch from WAP host project(with E&C support) to DNN Starter Kit WSP host project and back if required.
I didn't have a chance to look at your BlankModule Web Deployment Project yet. May be it can simplify my approach.

I don't like the idea to add DNNDebug.aspx to module project. My preference is to have module assembly separate from host project, which can be simple WAP project or full DNN web site.

Regards,
Michael Freidgeim
Left by Michael Freidgeim on Aug 17, 2006 7:55 AM

# re: Using Web Application Project(WAP) for development of DotNetNuke modules with Edit and Continue Support
Requesting Gravatar...
Hi Michael,

If you want, you can document your process a little bit better, mail it to me and we can see together if we can enhance the BlankModule to suit your needs as well (if it is found to be better, why not).

kind regards,
Vladan Strigo
Left by Vladan Strigo on Aug 17, 2006 2:11 PM

# re: Using Web Application Project(WAP) for development of DotNetNuke modules with Edit and Continue Support
Requesting Gravatar...
DNNDebug.aspx link is no more valid.
There is the possibility to download the vsi?
Left by Mkdi. on Oct 28, 2006 1:53 AM

# re: Using Web Application Project(WAP) for development of DotNetNuke modules with Edit and Continue Support
Requesting Gravatar...
According to http://www.speerio.net/default.aspx?tabid=810&view=topic&forumid=1&postid=978 you can get DNNDebug.aspx from the Speerio My Modules zip on the Downloads page (DNN 3.x/Resources).
I want to make vsi,but just don't have time to separate general code from specificsof my application. I will try to doit some time.
Left by Michael Freidgeim on Oct 28, 2006 6:17 PM

# re: Using Web Application Project(WAP) for development of DotNetNuke modules with Edit and Continue Support
Requesting Gravatar...
When I add a control to a web user control or double click on a web user control to define it's default method, that method gets created in the ascx file and not in the codebehind .cs file.

My understanding with WAP is that it was supposed to be essentially exactly like the old 1.1 model, but I can't find anything directly addressing this issue. It is frustrating to inadvertantly double click on an item, delete it's generated event in the inline code, only to forget to remove the pointer to the event in the controls definition and get to that point debugging. More importantly, things like dragging and dropping web user controls aren't supported best I can tell, and I was wondering has anyone experience with this?
Left by Kenneth Courtney on Feb 08, 2007 4:12 AM

# re: Using Web Application Project(WAP) for development of DotNetNuke modules with Edit and Continue Support
Requesting Gravatar...
Kenneth,
I believe something wrong with your <%@ Page directive, in particular CodeBehind and Inherits attributes. If they refer to existing file, VS should recognize and open them correctly.
I am able to drag and drop web user controls without any problems.
I recommend to post your question to VS 2005 Web Application Projects Forum http://forums.asp.net/1019/ShowForum.aspx
Left by Michael Freidgeim on Feb 08, 2007 8:06 AM

# re: Using Web Application Project(WAP) for development of DotNetNuke modules with Edit and Continue Support
Requesting Gravatar...
I figured my issue out btw... turns out that I didn't read Scott Gu's blog entry completely introducing WAP...

Specifically, WAP _Re-introduced_ the codebehind page attribute, without having ascx in WAP, it would have caused an error. In my case, the original developer (of the WWSTore module) never ran the 'Convert to Web Application' tool in the WAP, which is why there was no .designer class file and why when I double clicked the controls wouldn't hook up in the codebehind. Once i ran the conversion wizard (after 20 hours of futile waste of time) ... everything worked perfectly.

My new question is... I have something like the old solution structure I got off of some blog or another which has something a lot like the old _DnnStub project, where the _stub project just has the default.aspx page, in my case it is a .CSPROJ of DNN4. I would like to enable edit and continue, and figure it should be possible to make it happen... I tried removing my BuildSupport (you can find the blog entry I got it from...) project, referencing all of my projects in the DNN CSProj such that all the module's assemblies get copied to the \bin folder, but... which worked, and I even got cassini to launch. However, once DNN was up, I ran into a problem with the infinite redirects, and since I didn't have the source (dnn source) or think I could get it working in this structure, I didn't have the time to figure out what was causing the infinite redirect and had to revert my project.

Has anyone gotten edit & continue working with DotNetNuke 4 WAP with DNN running? Also, with the DNNDebug approach, isn't this just a simple web page loading the module in question? Are all the important properties like Module Settings, User Info, security, etc, programmatically available in the module?
Left by Kenneth Courtney on Feb 17, 2007 3:20 AM

# re: Using Web Application Project(WAP) for development of DotNetNuke modules with Edit and Continue Support
Requesting Gravatar...
Kenneth,

I wasn't able to convert the whole DNN project toWAPdue to some compiler errors during conversion(but Haacked done this.. to some level see haacked.com/archive/2006/05/18/DotNetNukeCSharpWebApplicationProject.aspx ).
This is why I came with simple WAP Project with one DNNDebug.aspx. Unfortunately this approach doesn't make available most of DNN features,including DNN user controls, Module Settings, User Info, security, etc.
To make them accessable, I've added more and more code from DNN Web Site, including HttpModules.
It made my main WAP project not as simple as it was,rather as truncated DNN site but in WAP format.

If I remember correctly,the infinite redirect could be caused by the RewriteUrl HttpModule,if you have somethinf wrong withPortalAlias.
Search DNN forums for the similar issues.

Left by Michael Freidgeim on Feb 17, 2007 8:59 AM

# re: Using Web Application Project(WAP) for development of DotNetNuke modules with Edit and Continue Support
Requesting Gravatar...
I implemented Vladan's BlankModule approach, but it still seems very slow (30+s to reload the application--the compilation is super fast). Seems anytime file gets modified in the Bin, the entire app reloads. With the WAP approach it is relatively quick as long as nothing modified in the App_Code directory. It is also nice being able to edit as you go. Maybe I am missing something with regard to Vladan's approach, because I know many people are following that paradigm. I have given up on all the BAL/DAL layers since it required to many mods to App_Code folder and now using Subsonic to build those layers using their BuildProvider.
Left by lmeyers on Feb 02, 2008 10:42 PM

Your comment:
 (will show your gravatar)


Copyright © Michael Freidgeim | Powered by: GeeksWithBlogs.net