Building the Solution

Building an ePortal solution consists of performing a build of the data source project, followed by a build of each associated presentation project. Each project build consists of a series of build steps.  Each build step takes one or more inputs and generates an associated output.  In order to improve build performance, the build processing has been optimized wherever possible to perform a build step only when one of the following is true:

To build the solution, select Build Solution from the Build menu.

Building the Data Source Project

A C# file (with the extension .cs) is generated for each ePortal client and server message. The generated C# file is referred to as the message class source file.

In order to allow message class source files to be regenerated only when necessary, these files are not added as members of the data source project.

A data source Dynamic Link Library (DLL) is created by compiling all of the C# files in the data source project and producing a single DLL file. The C# files consist of files generated for your orchestration and the message class source files.

There are non-incremental and incremental build options for producing a DLL file.

Non-incremental DLL Build

The traditional way to create a .Net DLL is to compile all input C# files with one call to the compiler and produce a single output DLL file. This is referred to as a non-incremental DLL build.

This approach has the following advantages:

However, this approach has the following significant disadvantage:

The non-incremental DLL build is the preferred and default approach when performing a Release build. Refer to Build Configurations for more information.

Incremental DLL Build

An alternative way of creating the .Net DLL is to compile each C# file into a netmodule (with extension .netmodule) and link the resulting netmodules into a DLL. This is referred to as the incremental DLL build.

In particular, ePortal compiles each message class source file into a corresponding netmodule file.  Then, the orchestration C# files are compiled and linked with all of the netmodule files, to create the data source DLL.

This approach has the following advantage:

However, this approach has the following disadvantages:

The incremental DLL build is the preferred and default approach when performing a Debug build. Refer to Build Configurations for more information.

Building Netmodules in Parallel

When using the incremental DLL build, ePortal can build the netmodule files in parallel. Building in parallel has the potential to reduce the overall build time, especially on systems with multiple processors.

Configuring Build Options

You can control the options used to build the data source DLL. Refer to Data Source Project Property Pages Dialog for more information.

Building a Web Forms Application or Web Forms Mobile Application Presentation Project

The following step is no longer performed on a Build Solution operation, however, this step is still performed on a Rebuild Solution operation. For more information, refer to Rebuilding the Solution.

In the earlier versions of ePortal Developer, on every build, each client message was validated against the corresponding .aspx file, and warnings were generated for any discrepancies found. For example, if a client message field existed with no corresponding control found on the .aspx page, a warning was produced. This proved to be extremely time consuming for cases with many client messages.

Building a WCF Web Service Application Presentation Project

The following C# files are generated during a WCF web service presentation project build:

In order to allow the C# files to be regenerated only when necessary, these files are not added as members of the presentation project.