# System.Web.WebPages.Deployment

**Kind:** Service

**Source:** `Pams/Logic/Pams.Business/Pams.Business.csproj` (line 1)

**Part of:** [Pams](subsystem-pams)

NuGet package dependency

`System.Web.WebPages.Deployment` is a NuGet package dependency declared by `Pams.Business.csproj`. It supports deployment-time behavior for ASP.NET Web Pages components during package restore and project build.

## Diagram

```mermaid
sequenceDiagram
    participant Build as Build Process
    participant Project as Pams.Business.csproj
    participant NuGet as NuGet Restore
    participant Package as System.Web.WebPages.Deployment
    participant WebPages as ASP.NET Web Pages

    Build->>Project: Load project references
    Project->>NuGet: Restore package dependency
    NuGet->>Package: Resolve package assets
    Package->>WebPages: Supply deployment support
    Build->>WebPages: Build application output
```

## Usage

```typescript
import { readFileSync } from "node:fs";

const projectPath = "Pams/Logic/Pams.Business/Pams.Business.csproj";
const projectFile = readFileSync(projectPath, "utf8");

const packageName = "System.Web.WebPages.Deployment";
const hasPackageReference = projectFile.includes(packageName);

if (!hasPackageReference) {
  throw new Error(
    `${packageName} is not referenced by ${projectPath}. Check the project package references.`,
  );
}

console.log(`${packageName} reference found in ${projectPath}.`);
```

## AI Coding Instructions

- Keep `System.Web.WebPages.Deployment` aligned with the legacy NuGet package reference format used by `Pams.Business.csproj`.
- Check whether the dependency is declared through a project reference, `packages.config`, or a NuGet restore target before changing it.
- Do not remove the package without checking ASP.NET Web Pages deployment behavior in environments that build or publish the application.
- When updating related packages, confirm that the target framework still supports `System.Web` and ASP.NET Web Pages dependencies.

## Used by

4 references from 4 files. Each is a place in this repository where the symbol is actually used — go read one rather than trusting an example.

### Injected or called by (4)

- `Pams.API` — `Pams/API/Pams.API/Pams.API.csproj`:1
- `Pams.Core` — `Pams/Core/Pams.Core/Pams.Core.csproj`:1
- `Pams.Security` — `Pams/Core/Pams.Security/Pams.Security.csproj`:1
- `Pams.Business` — `Pams/Logic/Pams.Business/Pams.Business.csproj`:1
