# System.Data.DataSetExtensions

**Kind:** Service

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

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

NuGet package dependency

System.Data.DataSetExtensions is a NuGet package dependency declared by `Pams/Logic/Common/Pams.Common.csproj`. It adds LINQ-oriented extension APIs for `DataSet` and `DataTable` code compiled by `Pams.Common`.

## Diagram

```mermaid
sequenceDiagram
    participant Developer
    participant Project as Pams.Common.csproj
    participant NuGet
    participant Build

    Developer->>Project: Restore dependencies
    Project->>NuGet: Request System.Data.DataSetExtensions
    NuGet-->>Project: Return package assets
    Project->>Build: Include referenced assemblies
    Build-->>Developer: Compile DataSet extension calls
```

## Usage

```ts
import { execFile } from "node:child_process";
import { promisify } from "node:util";

const execFileAsync = promisify(execFile);

await execFileAsync("dotnet", [
  "add",
  "Pams/Logic/Common/Pams.Common.csproj",
  "package",
  "System.Data.DataSetExtensions",
]);

await execFileAsync("dotnet", [
  "restore",
  "Pams/Logic/Common/Pams.Common.csproj",
]);
```

## AI Coding Instructions

- Keep the package declaration in `Pams/Logic/Common/Pams.Common.csproj` aligned with the project’s existing dependency format.
- Restore the project after changing the package reference so build assets are available.
- Use `System.Data.DataSetExtensions` from .NET code; TypeScript can only manage the project dependency through tooling.
- Check target-framework compatibility before changing the package reference or related framework assemblies.
