dotnet-project-structure

Automate .NET project setup with Directory.Build.props, .slnx, and SDK pinning.

1|Updated Mar 10, 2026
One-click install
npx skills add https://github.com/woutervanranst/Arius7 --skill dotnet-project-structure-woutervanranst
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: dotnet-project-structure
Source: https://github.com/woutervanranst/Arius7/tree/main/.agents/skills/project-structure
Command: npx skills add https://github.com/woutervanranst/Arius7 --skill dotnet-project-structure-woutervanranst

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Establishes a standardized, scalable .NET project skeleton with modern conventions to reduce setup time and misconfigurations.

Core Features & Use Cases

  • Centralized build configuration via Directory.Build.props and Directory.Packages.props
  • Modern solution tooling with .slnx and global.json SDK pinning
  • Built-in support for SourceLink and versioning through RELEASE_NOTES.md
  • Smooth onboarding for multi-project repositories and consistent CI pipelines

Quick Start

Initialize or convert a repository to use the dotnet-project-structure skill by adopting the standard workspace layout and tooling described above.

Frequently Asked Questions about dotnet-project-structure

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up centralized package management in a .NET multi-project repository?

Central package management uses Directory.Packages.props to consolidate all NuGet package versions into a single file. This ensures consistent dependency versions across every project within your .NET multi-project repository.

What is the best way to pin the .NET SDK version for a repository?

Pinning the .NET SDK version requires a global.json file in your repository root. This ensures all developers and CI pipelines use the exact same SDK version, preventing unexpected build breaks.

How does Directory.Build.props work for multi-project solutions?

Directory.Build.props automatically applies shared MSBuild properties to every project located beneath its folder. It eliminates redundant configuration by centralizing common build settings across your multi-project solution.

Can I drive .NET versioning and release notes through a single workflow?

You can drive versioning through a RELEASE_NOTES.md workflow that automatically manages version bumps. This integrates directly with SourceLink and CI pipelines to produce consistent, traceable releases.

Does this project structure approach require the modern .slnx solution format?

Yes, this project structure requires the modern .slnx-based solution format. It leverages this streamlined format alongside Directory.Build.props and central package management to establish scalable conventions.

Why use SourceLink integration in a .NET build pipeline?

SourceLink integration enriches build pipelines by embedding source control metadata into your artifacts. It allows developers to step directly into source code from NuGet packages during troubleshooting.