---
title: SAIF.Presentation.Web.Core.Infragistics103 overview
summary: High-level purpose, scope, and responsibilities for this library.
status: draft
owner: SAIF Documentation Team
last_reviewed: 2026-08-17
library: SAIF.Presentation.Web.Core.Infragistics103
reference_type: package
---

# SAIF.Presentation.Web.Core.Infragistics103 overview

> **Documentation context:** Packaged Component (NuGet)

This library provides the base-class layer for the "AppMVCBase" web-forms application pattern* used by SAIF web applications built on Infragistics 10.3 controls. It is packaged as part of the merged `SAIF.BOF.Presentation.Web.Infragistics103` NuGet package and is intended to be subclassed by individual consuming application projects, whose screens define their own Controller/Model/Page/MasterPage deriving from the base classes defined here.

## Purpose
- Supply page/master-page lifecycle base classes (`AppViewPageBase`, `AppViewMasterPageBase`) that provide session keep-alive, grid column/sort/size preference persistence, focus-control JavaScript generation for Infragistics editors, hover-help configuration, and grid-row validation-error highlighting.
- Extend the framework's `clsControllerBase`/`clsModelBase` (from `SAIF.Framework`) with SAIF-specific conventions via `clsAppControllerBase`/`clsAppModelBase`: numeric-menu-context validation, standard save/delete message constants, and mail/grid-customizer plumbing.
- Provide stateless, `Shared`-only UI utility helpers (`Utilities.clsControlManager`, `Utilities.clsStringUtilities`, `clsNestedMaster`) for enabling/disabling/protecting form controls, binding dropdown/grid value lists, generating grid-edit-mode/scroll JavaScript, and traversing nested master-page hierarchies.
- Act as the presentation-layer entry point into the BOF Menu subsystem (`NavigationContext`), resolving which menu items/pages the current application/user context is authorized to see by delegating to `SAIF.Business.Menu`.
- Wrap a legacy SOAP web service for outbound mail with/without attachments, and provide a generic file-streaming download helper (`Utilities.clsMailMessage`).
- Consumed by individual SAIF web application projects that derive their own Controller/Model/Page/MasterPage classes from the base classes defined here.

## Responsibilities
- Own page/master-page lifecycle concerns for consuming applications.
- Extend framework controller/model base classes with SAIF-specific conventions.
- Provide cross-cutting UI utility helpers used throughout the view layer.
- Resolve menu/navigation authorization context for the current application/user.
- Send outbound email and stream file downloads.

## Key components
- `AppViewPageBase`: page lifecycle base class providing session ping, grid preference persistence, hover-help, and grid error highlighting.
- `AppViewMasterPageBase`: master-page lifecycle base class providing focus-control script generation.
- `clsAppControllerBase`: SAIF-specific extension of `clsControllerBase` (numeric menu-context validation).
- `clsAppModelBase`: SAIF-specific extension of `clsModelBase` (message constants, mail/grid-customizer plumbing, stub `ValidateData`/`WriteData`).
- `NavigationContext`: presentation-layer entry point into the BOF Menu authorization subsystem.
- `Utilities.clsControlManager`: stateless reflection-based control enable/disable/binding helpers.
- `Utilities.clsMailMessage`: legacy SOAP mail-sending and file-download-streaming helper.
- `Utilities.clsStringUtilities`: text-cleaning helpers for email-safe content.
- `clsNestedMaster`: recursive nested master-page/control lookup helper.

## Related documentation
- [Index](index.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Configuration settings](configuration.md)
- [API reference](api/index.md)

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or
> contextual evidence where direct confirmation was not available in source artifacts. Statements
> marked with ** could not be confirmed; treat as unknown until verified.

## Sources
- SAIF.Presentation.Web.Core.Infragistics103\SAIF.Presentation.Web.Core.Infragistics103.vbproj
- SAIF.BOF.Presentation.Web.Infragistics103.nuspec
