When a Visual Welder™ application is running, there are at
least four layers in operation:
The client, running on the user's machine
The (web) presentation layer
The business layer
The database
In practice, the project could be deployed in less than 4 tiers; if desired, the client as well as the web, application and database servers could all be placed on a single machine, though for performance reasons this may not be desirable.
The presentation layer, which runs on a web server, contains all the aspx forms in the project, which will usually all be descendants of sembleWebPage. The user interacts with this layer using a web browser, and navigates through the forms in the system, along paths defined in accordance with the Visual Welder™ navigational structure, using buttons that are usually created using the Active Toolbox. These buttons may also be used to perform actions on the parts in the system.
The business layer, which runs statelessly on an application server, contains all the part classes in the project. These classes contain all the code that implements elements and relationships.
The database lies beneath the business layer, and its relationship to the business layer is described in Visual Welder™ and the Relational Database. Visual Welder™ always implements concurrency protection, in order to protect your data from corruption arising from simultaneous editing of the same record.
While most (if not all) of the code required for a Visual Welder™ system is automatically generated by the Visual Welder™ Add-In, this information is provided to equip the developer with an understanding of the structures involved, and therefore the ability to write efficient, correct custom code where this is required.
It is also important to note that for the sake of preserving plug-and-play-ability, there are certain guidelines for writing safe code that should always be adhered to.