Files
templates-dotnet/.github/instructions/solution.instructions.md
T
akritikosandCopilot 2f1e580e49 Adds documentation instructions for ADR, analyzers, and observability
Introduces new markdown files detailing editing rules for ADRs,
guidelines for analyzer and style configuration, and best practices
for observability and feature flags. These documents aim to ensure
consistency and clarity in project documentation and code quality.

Co-authored-by: Copilot <copilot@github.com>
2026-04-25 16:30:51 +03:00

29 lines
1.3 KiB
Markdown

---
description: "Use when adding, removing, or moving projects, or when editing the solution file or VS Code workspace."
applyTo: "*.slnx,*.sln,Solution.code-workspace"
---
# Solution Conventions
`Solution.slnx` (XML) is the canonical solution format. The legacy `.sln` is not used; do not regenerate it.
## Adding & Removing Entries
Any project, configuration, or asset file added to, removed from, or renamed in a tracked location **must** be reflected in `Solution.slnx` in the same commit. New top-level folders also require an entry in `Solution.code-workspace`.
Place entries in the virtual folder matching the on-disk location:
| On-disk location | Virtual folder |
| --- | --- |
| `src/**`, `samples/**`, `tests/**` (projects + their `Directory.Build.props`) | `/src/`, `/samples/`, `/tests/` |
| Repo-root config files (`.editorconfig`, `Directory.*.props`, `GitVersion.yml`, etc.) | `/Configuration/` |
| Repo-root assets (`README.md`, `LICENSE.md`, `icon.png`, logos) | `/Assets/` |
Reserved virtual folder names must not be renamed.
## Renames
- Update the `.slnx` entry, the on-disk path, and any `ProjectReference` paths in dependent projects in the same commit.
- Never leave dangling `<File Path="…" />` or project entries.
After any `.slnx` change, run `dotnet build` to confirm all referenced projects load.