This short article describes a general approach of keeping your customization safe and untouched through any netFORUM version upgrade. Let’s take a look at a few important moments that can help achieving it. Always substitute baseline forms with your customization forms. This is the most important customization rule. The idea is simple – during the upgrade the baseline forms may be completely rewritten and recreated, but anything beyond the baseline left as it is. Look at the picture below to see how form substitution can be set up.
Fig. 1: - Form substitution example.
Never use undocumented or private members of netFORUM dll libraries. This can be really a bad practice to do so. Some developers use access to private fields or methods of netFORUM classes using .net reflection technology. But the private members are often the first candidates to be removed or renamed during the refactoring for the new version. Nobody cares for back-compatibility of private data members.
You may carefully use metadata lock for skipping any functionality by upgrade. You have probably noticed “metadata lock” checkbox in a lot of places in the iweb. By setting this checkbox to “checked” state you force the upgrade process to skip this functionality and leave it as it is. This trick can be used for baseline functionality as well – that’s why we used the word “carefully”, just think one more time if you really need some baseline parts to skip the upgrade.
Fig. 2: - Metadata lock checkbox example.