The Data Manager is the client code that creates a table specific LJCDBMessage.DbRequest object. It then serializes the DbRequest object into a Request XML message to pass to the LJCDBServiceLib.DbService.Execute() method or directly to the LJCDBDataAccess.DbDataAccess.Execute() method.

The DataManager object creates the contained BaseDefinition collection when the DataManager is created. The BaseDefinition is an LJCNetCommon.DbColumns collection which contains the column definitions for the base table. Each element DbColumn contains the table ColumnName, PropertyName, Caption, DataTypeName and MaxLength. These column definitions are retrieved from the database.

The contained DataDefinition collection is also created at this time. This enables adding Calculated and Join columns to a grid column configuration.

The DbColumn.Caption is initially set to the same value as the ColumnName as that is how it is returned from ADO.NET. The PropertyName is initially set to the same value as the ColumnName if the DbColumn is initialized with a blank PropertyName value. These values can be modified later as required.

The BaseDefinition is used to create the DbColumn objects that are defined in a DbRequest object. These objects are then used to create the SQL Statements that are executed to perform the requested data operation.

The Data methods are Add(), Delete(), ExecuteClientSql(), Load, LoadProcedure(), Retrieve() and Update().

The Data methods create a DbRequest object and pass it to the ExecuteRequest() method.