---
title: SAIF.Services.Web operations and processes
summary: Operation catalog and cross-operation hub for the SAIF.Services.Web remote-POST redirect utility.
status: draft
owner: <owner>
last_reviewed: 2026-07-30
library: SAIF.Services.Web
reference_type: package
---

# SAIF.Services.Web operations and processes

This page is the operation catalog and cross-operation hub for `SAIF.Services.Web`. The library exposes a single operation — a cross-site remote form redirect performed by the `RemotePost` class — used by ASP.NET callers to forward a user with POST-body parameters to a target URL. Each operation's detailed, step-by-step logic lives in its own page under `operations/`.

## Operation catalog

| Operation | Intent | Trigger | Inputs | Outputs | Rules | Tables | SQL |
| --- | --- | --- | --- | --- | --- | --- | --- |
| [Cross-site remote form redirect](operations/cross-site-remote-form-redirect.md) | Forward a user with POST-body parameters to a target URL via an auto-submitting HTML form | Caller instantiates `RemotePost`, sets `URL`, calls `AddInput` for each parameter, and calls `Post()` | Target `URL`, one or more name/value pairs, optional `FormName` | Auto-submitted HTTP POST to target URL; current ASP.NET response is cleared and ended | None registered* | None documented* | None catalogued* |

## Process flow diagram

The following diagram visualizes the primary operational flow.

```mermaid
flowchart TD
	Start([Start]) --> Init[Caller instantiates RemotePost<br>and sets URL]
	Init --> AddInputs[Caller calls AddInput<br>for each name/value pair]
	AddInputs --> OptFormName{Override<br>FormName?}
	OptFormName -->|Yes| SetFormName[Set FormName property]
	OptFormName -->|No| CallPost[Call Post]
	SetFormName --> CallPost
	CallPost --> Clear[Response.Clear]
	Clear --> WriteHtml[Write auto-submit HTML form]
	WriteHtml --> End[Response.End]
	End --> BrowserReceives[Browser receives HTML]
	BrowserReceives --> AutoSubmit([Browser auto-submits<br>HTTP POST to Target URL])
```

## Failure and edge-case behavior

- If `Post()` is called outside an active ASP.NET web request context (i.e., `HttpContext.Current` is null), a `NullReferenceException` will occur at runtime.*
- If `URL` is not set before calling `Post()`, the generated form targets an empty `action` attribute, causing the browser to POST back to the current page.*
- Caller-supplied `Name`/`Value` pairs are written directly into HTML `<input>` attribute values without HTML-encoding; values containing HTML special characters may produce malformed markup or enable injection if untrusted input is passed.*

See the [Cross-site remote form redirect](operations/cross-site-remote-form-redirect.md) operation page for the full set of failure and edge-case behaviors, including duplicate-input handling and JavaScript-disabled fallback.

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Business rules](business-rules.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.

## Sources
- `Services\SAIF.Services.Web\RemotePost.vb`
- `Services\SAIF.Services.Web\SAIF.BOF.Services.Web.vbproj`
