---
title: Mappers
summary: API reference for Mappers.
status: draft
owner: SAIF Documentation
last_reviewed: 2026-09-17
library: SAIF.Framework.Web.Mvc
reference_type: package
---

# Mappers

Sole mapping boundary between the `BusinessOnlineMenu` service contract and the MVC-facing `MenuViewModel`, keeping the contract-to-view-model field mapping in one place rather than scattering it across controllers.

## Purpose
- Sole mapping boundary between the `BusinessOnlineMenu` service contract and the MVC-facing `MenuViewModel`, keeping the contract-to-view-model field mapping in one place rather than scattering it across controllers.

## Context
- Namespace: `SAIF.Web.Mvc`
- Assembly/package: `SAIF.Framework.Web.Mvc (source-shipping NuGet package)`
- Kind: static class

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| MapMenuViewModel(BusinessOnlineMenu) | `public static MenuViewModel MapMenuViewModel(this BusinessOnlineMenu bolMenu)` | Projects `Favorites` and `Items` onto `MenuItemViewModel` collections; see the "Map the menu contract to view models" operation. |

## Behavioral notes
- The projection is a lazy `Select` with no materialization, so enumeration happens at render time rather than at mapping time.*

> **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
- `src/Web.Mvc/Classes/Mappers.cs`
