# System.Web.WebPages.Deployment

**Kind:** Service

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

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

NuGet package dependency

`System.Web.WebPages.Deployment` is a NuGet package dependency declared by the `Pams.Core` project in its legacy project format. Package restore resolves the dependency before build so assemblies that depend on WebPages deployment components are available to the application.

## Diagram

```mermaid
sequenceDiagram
    participant Developer
    participant NuGet
    participant PamsCore as Pams.Core.csproj
    participant Build
    participant Application

    Developer->>NuGet: Restore package dependencies
    NuGet->>PamsCore: Resolve System.Web.WebPages.Deployment
    Developer->>Build: Build Pams.Core project
    Build->>Application: Include resolved assemblies
```

## Usage

```javascript
import { execFileSync } from "node:child_process";

const projectFile = "Pams/Core/Pams.Core/Pams.Core.csproj";

// Restore the NuGet dependency declared by the legacy project file.
execFileSync("nuget", ["restore", projectFile], {
  stdio: "inherit",
});

// Build after System.Web.WebPages.Deployment has been restored.
execFileSync("msbuild", [projectFile], {
  stdio: "inherit",
});
```

## AI Coding Instructions

- Restore NuGet packages before building `Pams.Core.csproj`.
- Treat `System.Web.WebPages.Deployment` as a project dependency rather than an application service endpoint.
- Keep related `System.Web.WebPages` package references compatible with the project’s target framework.
- Do not remove the package reference unless all dependent WebPages deployment code has also been removed.
