Skip to content

Commit 6b10058

Browse files
authored
Add missing documentation for sln, buildprops, and buildtargets item templates (#48191)
1 parent 37097d7 commit 6b10058

File tree

2 files changed

+39
-4
lines changed

2 files changed

+39
-4
lines changed

docs/core/tools/dotnet-new-sdk-templates.md

Lines changed: 36 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,9 @@ title: .NET default templates for dotnet new
33
description: The information about dotnet new templates shipped with dotnet SDK.
44
ms.custom: updateeachrelease
55
no-loc: [Blazor, WebAssembly]
6-
ms.date: 02/21/2024
6+
ms.date: 08/29/2025
77
---
8-
# .NET default templates for dotnet new
8+
# Default templates for `dotnet new`
99

1010
When you install the [.NET SDK](https://dotnet.microsoft.com/download), you receive over a dozen built-in templates for creating projects and files, including console apps, class libraries, unit test projects, ASP.NET Core apps (including [Angular](https://angular.io/) and [React](https://reactjs.org/) projects), and configuration files. To list the built-in templates, run the `dotnet new list` command:
1111

@@ -19,7 +19,31 @@ dotnet new list
1919

2020
Each template may have additional options available. To show the additional options available for the template use the `--help` option with the template name argument, for example: `dotnet new console --help`.
2121
In case the template supports multiple languages, this command will show help for the template in the default language. By combining it with the `--language` option, you can see the help for other languages: `dotnet new console --help --language F#`.
22-
The templates that ship with the .NET SDK have the following additional options:
22+
The templates that ship with the .NET SDK have additional options that are described in the following sections.
23+
24+
## `buildprops`
25+
26+
Creates a *Directory.Build.props* file for customizing MSBuild properties for an entire folder tree. For more information, see [Customize your build](/visualstudio/msbuild/customize-your-build).
27+
28+
- **`--inherit`**
29+
30+
If specified, adds an Import element for the closest *Directory.Build.props* file in the parent directory hierarchy. By default, *Directory.Build.props* files don't inherit from parent directories, so enabling this option allows you to build up a hierarchy of customizations folder-by-folder.
31+
32+
- **`--use-artifacts`**
33+
34+
If specified, adds a property to enable the artifacts output layout. This is a common pattern for projects that produce build artifacts, such as NuGet packages, that are placed in a common folder structure. For more information, see [Artifacts output layout](../sdk/artifacts-output.md).
35+
36+
***
37+
38+
## `buildtargets`
39+
40+
Creates a *Directory.Build.targets* file for customizing MSBuild targets and tasks for an entire folder tree. For more information, see [Customize your build](/visualstudio/msbuild/customize-your-build).
41+
42+
- **`--inherit`**
43+
44+
If specified, adds an Import element for the closest *Directory.Build.targets* file in the parent directory hierarchy. By default, *Directory.Build.targets* files don't inherit from parent directories, so enabling this option allows you to build up a hierarchy of customizations folder-by-folder.
45+
46+
***
2347

2448
## `console`
2549

@@ -901,6 +925,15 @@ API Controller with or without read/write actions.
901925
The roll-forward policy to use when selecting an SDK version, either as a fallback when a specific SDK version is missing or as a directive to use a later version.
902926
For more information, see [global-json](global-json.md#rollforward).
903927

928+
## `sln`
929+
930+
Creates an empty solution file containing no projects.
931+
932+
> [!NOTE]
933+
> In .NET SDK 9.0.200 and later, this template supports a `--format` option to choose between `sln` and `slnx` formats. Starting with .NET 10, the default format is `slnx`.
934+
935+
***
936+
904937
## `editorconfig`
905938

906939
Creates an *.editorconfig* file for configuring code style preferences.

includes/templates.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,9 @@ The following table shows the templates that come pre-installed with the .NET SD
3535
| NuGet Config | `nugetconfig` | | Config | 1.0 |
3636
| Dotnet local tool manifest file | `tool-manifest` | | Config | 3.0 |
3737
| Web Config | `webconfig` | | Config | 1.0 |
38-
| Solution File | `sln` | | Solution | 1.0 |
38+
| Directory.Build.props file | [`buildprops`](../docs/core/tools/dotnet-new-sdk-templates.md#buildprops) | | Config | 8.0.100 |
39+
| Directory.Build.targets file | [`buildtargets`](../docs/core/tools/dotnet-new-sdk-templates.md#buildtargets) | | Config | 8.0.100 |
40+
| Solution File | [`sln`](../docs/core/tools/dotnet-new-sdk-templates.md#sln) | | Solution | 1.0 |
3941
| Protocol Buffer File | [`proto`](../docs/core/tools/dotnet-new-sdk-templates.md#namespace) | | Web/gRPC | 3.0 |
4042
| EditorConfig file | [`editorconfig`](../docs/core/tools/dotnet-new-sdk-templates.md#editorconfig) | | Config | 6.0 |
4143

0 commit comments

Comments
 (0)