[This post is part of the developer's manual preview published on this blog. You can find temporary TOC here.]
Before we go into any more details, it is important to note that:
Old modules are compatible with Sitefinity 3.6 and it is not necessary to port them.
Now, that we have cleared the backward compatibility issue, let us examine the two major changes that were introduced. Thinking on this higher level, we will be able to quickly devise a plan for module migration.
- Modules are separated in Views. ControlPanel is only the top level View now, unlike in prior versions where it was the control which held all the UI elements and logic of a module
- We are navigating between Views through URLs, unlike in prior versions where we used postbacks and modes to show or hide particular piece of the ControlPanel
First, we will have to break up the ControlPanel into logical Views, where each View does one single thing.
Secondly, we will have to replace all the Button and LinkButton controls which used to switch the mode of the ControlPanel to HyperLinks and have them navigate among Views, as opposed to perform postbacks.
We will explain both tasks as well as the experiences we’ve had in regards to this task in the next two articles in this topic.