---
title: NavigationOptions
summary: API reference for NavigationOptions.
status: draft
owner: SAIF IT Core Services
last_reviewed: 2026-10-12
library: BolMiddleware
reference_type: package
---

# NavigationOptions

Describes a navigation target (application and page) and builds the URL a page model redirects to, optionally carrying the context id so the target application can load the same context.

## Purpose
- Build the redirect URL for menu clicks and `Navigate` calls, appending `cid` when a context id is given.

## Context
- Namespace: `BolMiddleware.Contracts`
- Assembly/package: `BolMiddleware`

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| `TargetApplication` | `string TargetApplication` | Application part of the target URL. |
| `TargetPage` | `string TargetPage` | Page part of the target URL. |
| Constructor | `NavigationOptions()` | Creates an empty target for property initialization. |
| Constructor | `NavigationOptions(string targetApp, string targetPage)` | Creates a target in one step. |
| `ToUrl` | `string ToUrl()` | Returns the target URL without a context id. |
| `ToUrl` | `string ToUrl(string cid)` | Returns the target URL with the `cid` query parameter appended. |

## Behavioral notes
- The private query-parameter helper does not URL-encode values, and the target values are not checked against an allow-list.

## Constraints and usage notes
- Treat posted `targetApp` and `targetPage` as untrusted; see [Security and authorization](../../security-authorization.md).

## Sources
- src/BolMiddleware/Contracts/NavigationOptions.cs
