DNN Community Blog

The Community Blog is a personal opinion of community members and by no means the official standpoint of DNN Corp or DNN Platform. This is a place to express personal thoughts about DNNPlatform, the community and its ecosystem. Do you have useful information that you would like to share with the DNN Community in a featured article or blog? If so, please contact .

The use of the Community Blog is covered by our Community Blog Guidelines - please read before commenting or posting.


New Module Upgrade Wizard (.NET2) to be made available


There has been much discussion since November regarding the new Website "project" that Microsoft introduced in Visual Studio 2005/.NET 2.  This Website project model is quite different from the Visual Studio 2003/ .NET 1.1 paradigm.

As a result of this significant change, Microsoft has responded to complaints from the developer community by releasing a new Web Application Project add-in, that closely replicates the Visua Studio 2003/.NET 1.1 project model.

However, we have worked with the new model for nearly a year now, and frankly I like it for Rapid Application Devlopment.  In addition, this new model is fully supported by the free Visual Web Developer product.

As part of the Starter Kit package for DNN 4.x, we have included Item templates that allow Module Developers to get a head-start in developing a new module in Visual Web Developer.

We are now pleased to announce that as part of the next release of the 4.x code-base (4.3), we will be providing a "Module Upgrade Wizard", to enable Module developers to quickly port their v3.x modules to the new design environment.

This Wizard is a .NET 2 Windows Forms application so it will need the .NET 2 Framework installed on your local machine, but that is all (no other set-up involved).

There are three steps to the upgrade, and I will outline these steps with screenshots from the Wizard.

Step 1: Choose location of Websites

The first step is to choose the location of your v3 development website (ie the website where your Module Source code is located), and the location of your proposed v4 development website.

UpgradeWizard_1.png

Step 2: Choose Module(s) to Upgrade

The next step is to choose the Module(s) you wish to "upgrade" from the list of Modules.  (Note, the Wizard lists all Modules based on the Folders that exist in the DesktopModules folder.)

UpgradeWizard_2.png

Step 3: Report on Upgrade

When you have chosen all the modules to upgrade, clicking Finish, upgrades the modules, and produces a report log.

UpgradeWizard_3.png

Note, the log may be saved (as an rtf file).

So what does the Wizard do.

In general, the wizard scans the v3 Module development folder and copies the files into the appropriate location in the v4 development site.

More specifically:
  • code files (.vb or .cs) are copied to the appropriate folder under App_Code.
  • user control files (.ascx, .aspx) are copied to the appropraite folder under DesktopModules.  In addition their codeBehind attribute is changed to a codeFile attribute.
  • the code behind files (.ascx.vb, .ascx.cs etc) are copied to the DesktopModules folder, and a couple of modifications are made.
    • Public MustInherit Class, Public Class, and the C# equivalents are changed to Publi Partial Class
    • If present the "Controls" region is removed.  If control declarations are not included in a "Controls" region then they are not removed (at least in this first version of the wizard).  As controls are declared in the .ascx file, the declarations in the codeFile will cause duplicate declaration compile errors.  If the wizard doesn't catch these, it is a simple task to manually remove the declarations in Visual Web Developer.
  • all other content files are moved to the DesktopModules folder.
  • a node is added to web.config for the newly added folder under App_Code.  This is especially important for C# modules, as without this node the website will not build.
In most cases, simple Modules will be converted with a few errors remaining and quite probably Syntax Warnings as well, but most of these are quite easy to fix (within minutes).  More complicated modules (like our own Forum or Store Modules will require a few hours work to remove the remaining errors).

We hope that this Wizard will allow Module Developers to start porting their existing modules to .NET 2.

Comments

There are currently no comments, be the first to post one.

Comment Form

Only registered users may post comments.

NewsArchives


Aderson Oliveira (15)
Alec Whittington (11)
Alex Shirley (10)
Andrew Nurse (30)
Andy Tryba (1)
Anthony Glenwright (5)
Antonio Chagoury (28)
Ash Prasad (32)
Ben Schmidt (1)
Benjamin Hermann (25)
Benoit Sarton (9)
Beth Firebaugh (12)
Bill Walker (36)
Bob Kruger (5)
Bogdan Litescu (1)
Brian Dukes (2)
Brice Snow (1)
Bruce Chapman (20)
Bryan Andrews (1)
cathal connolly (55)
Charles Nurse (163)
Chris Hammond (209)
Chris Paterra (55)
Clinton Patterson (40)
Cuong Dang (21)
Daniel Bartholomew (2)
Daniel Mettler (154)
Dave Buckner (2)
David Poindexter (4)
David Rodriguez (3)
Doug Howell (11)
Erik van Ballegoij (30)
Ernst Peter Tamminga (74)
Geoff Barlow (10)
George Alatrash (6)
Gifford Watkins (3)
Gilles Le Pigocher (3)
Ian Robinson (7)
Israel Martinez (17)
Jan Blomquist (2)
Jan Jonas (3)
Jaspreet Bhatia (1)
Jenni Merrifield (6)
Joe Brinkman (274)
John Mitchell (1)
Jon Henning (14)
Jonathan Sheely (4)
Jordan Coopersmith (1)
Joseph Craig (2)
Kan Ma (1)
Keivan Beigi (3)
Ken Grierson (10)
Kevin Schreiner (6)
Leigh Pointer (31)
Lorraine Young (60)
Malik Khan (1)
Matthias Schlomann (15)
Mauricio Márquez (5)
Michael Doxsey (7)
Michael Tobisch (3)
Michael Washington (202)
Miguel Gatmaytan (3)
Mike Horton (19)
Mitchel Sellers (28)
Nathan Rover (3)
Navin V Nagiah (14)
Néstor Sánchez (31)
Nik Kalyani (14)
Peter Donker (54)
Philip Beadle (135)
Philipp Becker (4)
Richard Dumas (22)
Robert J Collins (5)
Roger Selwyn (8)
Ruben Lopez (1)
Ryan Martinez (1)
Salar Golestanian (4)
Sanjay Mehrotra (9)
Scott McCulloch (1)
Scott S (11)
Scott Wilkinson (3)
Scott Willhite (97)
Sebastian Leupold (80)
Shaun Walker (237)
Shawn Mehaffie (17)
Stefan Cullmann (12)
Stefan Kamphuis (12)
Steve Fabian (31)
Timo Breumelhof (24)
Tony Henrich (3)
Torsten Weggen (2)
Vicenç Masanas (27)
Vincent Nguyen (3)
Vitaly Kozadayev (6)
Will Morgenweck (40)
Will Strohl (165)
William Severance (5)

Content Layout

Subscribe to DNN Digest

DNN Digest is our monthly email newsletter. It highlights news and content from around the DNN ecosystem, such as new modules and themes, messages from leadership, blog posts and notable tweets. Keep your finger on the pulse of the ecosystem by subscribing.  


Copyright 2017 by DNN Corp Terms of Use Privacy
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out
What is Liquid Content?
Find Out