Skip to content
37 changes: 20 additions & 17 deletions docs/azure/includes/dotnet-all.md

Large diffs are not rendered by default.

7 changes: 5 additions & 2 deletions docs/azure/includes/dotnet-new.md
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,8 @@
| Text Translation | NuGet [1.0.0](https://www.nuget.org/packages/Azure.AI.Translation.Text/1.0.0)<br>NuGet [2.0.0-beta.1](https://www.nuget.org/packages/Azure.AI.Translation.Text/2.0.0-beta.1) | [docs](/dotnet/api/overview/azure/AI.Translation.Text-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Translation.Text_1.0.0/sdk/translation/Azure.AI.Translation.Text/)<br>GitHub [2.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Translation.Text_2.0.0-beta.1/sdk/translation/Azure.AI.Translation.Text/) |
| Time Series Insights | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.IoT.TimeSeriesInsights/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/IoT.TimeSeriesInsights-readme?view=azure-dotnet-preview&amp;preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.IoT.TimeSeriesInsights_1.0.0-beta.1/sdk/timeseriesinsights/Azure.IoT.TimeSeriesInsights/) |
| TimeZone | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.Maps.TimeZones/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/Maps.TimeZones-readme?view=azure-dotnet-preview&amp;preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Maps.TimeZones_1.0.0-beta.1/sdk/maps/Azure.Maps.TimeZones/) |
| unknown | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.AI.AgentServer.Invocations/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/AI.AgentServer.Invocations-readme?view=azure-dotnet-preview&amp;preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.AgentServer.Invocations_1.0.0-beta.1/sdk/agentserver/Azure.AI.AgentServer.Invocations/) |
| unknown | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.AI.AgentServer.Responses/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/AI.AgentServer.Responses-readme?view=azure-dotnet-preview&amp;preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.AgentServer.Responses_1.0.0-beta.1/sdk/agentserver/Azure.AI.AgentServer.Responses/) |
| unknown | NuGet [2.0.0](https://www.nuget.org/packages/Azure.AI.Extensions.OpenAI/2.0.0) | [docs](/dotnet/api/overview/azure/AI.Extensions.OpenAI-readme) | GitHub [2.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Extensions.OpenAI_2.0.0/sdk/ai/Azure.AI.Extensions.OpenAI/) |
| unknown | NuGet [2.0.0](https://www.nuget.org/packages/Azure.AI.Projects.Agents/2.0.0) | [docs](/dotnet/api/overview/azure/AI.Projects.Agents-readme) | GitHub [2.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Projects.Agents_2.0.0/sdk/ai/Azure.AI.Projects.Agents/) |
| Video Analyzer Edge | NuGet [1.0.0-beta.6](https://www.nuget.org/packages/Azure.Media.VideoAnalyzer.Edge/1.0.0-beta.6) | [docs](/dotnet/api/overview/azure/Media.VideoAnalyzer.Edge-readme?view=azure-dotnet-preview&amp;preserve-view=true) | GitHub [1.0.0-beta.6](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Media.VideoAnalyzer.Edge_1.0.0-beta.6/sdk/videoanalyzer/Azure.Media.VideoAnalyzer.Edge/) |
Expand Down Expand Up @@ -184,12 +186,13 @@
| Provisioning - Kusto | NuGet [1.0.0-beta.2](https://www.nuget.org/packages/Azure.Provisioning.Kusto/1.0.0-beta.2) | [docs](/dotnet/api/overview/azure/Provisioning.Kusto-readme?view=azure-dotnet-preview&amp;preserve-view=true) | GitHub [1.0.0-beta.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.Kusto_1.0.0-beta.2/sdk/provisioning/Azure.Provisioning.Kusto/) |
| Provisioning - Monitor | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.Provisioning.Monitor/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/Provisioning.Monitor-readme?view=azure-dotnet-preview&amp;preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.Monitor_1.0.0-beta.1/sdk/monitor/Azure.Provisioning.Monitor/) |
| Provisioning - Mysql | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.Provisioning.MySql/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/Provisioning.MySql-readme?view=azure-dotnet-preview&amp;preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.MySql_1.0.0-beta.1/sdk/mysql/Azure.Provisioning.MySql/) |
| Provisioning - Network | NuGet [1.0.0](https://www.nuget.org/packages/Azure.Provisioning.Network/1.0.0)<br>NuGet [1.1.0-beta.2](https://www.nuget.org/packages/Azure.Provisioning.Network/1.1.0-beta.2) | [docs](/dotnet/api/overview/azure/Provisioning.Network-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.Network_1.0.0/sdk/network/Azure.Provisioning.Network/)<br>GitHub [1.1.0-beta.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.Network_1.1.0-beta.2/sdk/network/Azure.Provisioning.Network/) |
| Provisioning - Network | NuGet [1.1.0](https://www.nuget.org/packages/Azure.Provisioning.Network/1.1.0) | [docs](/dotnet/api/overview/azure/Provisioning.Network-readme) | GitHub [1.1.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.Network_1.1.0/sdk/network/Azure.Provisioning.Network/) |
| Provisioning - Operational Insights | NuGet [1.1.0](https://www.nuget.org/packages/Azure.Provisioning.OperationalInsights/1.1.0)<br>NuGet [1.2.0-beta.1](https://www.nuget.org/packages/Azure.Provisioning.OperationalInsights/1.2.0-beta.1) | [docs](/dotnet/api/overview/azure/Provisioning.OperationalInsights-readme) | GitHub [1.1.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.OperationalInsights_1.1.0/sdk/provisioning/Azure.Provisioning.OperationalInsights/)<br>GitHub [1.2.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.OperationalInsights_1.2.0-beta.1/sdk/provisioning/Azure.Provisioning.OperationalInsights/) |
| Provisioning - PostgreSQL | NuGet [1.1.1](https://www.nuget.org/packages/Azure.Provisioning.PostgreSql/1.1.1)<br>NuGet [1.2.0-beta.2](https://www.nuget.org/packages/Azure.Provisioning.PostgreSql/1.2.0-beta.2) | [docs](/dotnet/api/overview/azure/Provisioning.PostgreSql-readme) | GitHub [1.1.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.PostgreSql_1.1.1/sdk/provisioning/Azure.Provisioning.PostgreSql/)<br>GitHub [1.2.0-beta.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.PostgreSql_1.2.0-beta.2/sdk/provisioning/Azure.Provisioning.PostgreSql/) |
| Provisioning - Private DNS | NuGet [1.0.0](https://www.nuget.org/packages/Azure.Provisioning.PrivateDns/1.0.0) | [docs](/dotnet/api/overview/azure/Provisioning.PrivateDns-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.PrivateDns_1.0.0/sdk/provisioning/Azure.Provisioning.PrivateDns/) |
| Provisioning - Redis | NuGet [1.1.0](https://www.nuget.org/packages/Azure.Provisioning.Redis/1.1.0) | [docs](/dotnet/api/overview/azure/Provisioning.Redis-readme) | GitHub [1.1.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.Redis_1.1.0/sdk/provisioning/Azure.Provisioning.Redis/) |
| Provisioning - Redisenterprise | NuGet [1.1.0](https://www.nuget.org/packages/Azure.Provisioning.RedisEnterprise/1.1.0) | [docs](/dotnet/api/overview/azure/Provisioning.RedisEnterprise-readme) | GitHub [1.1.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.RedisEnterprise_1.1.0/sdk/provisioning/Azure.Provisioning.RedisEnterprise/) |
| Provisioning - Resource Graph | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.Provisioning.ResourceGraph/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/Provisioning.ResourceGraph-readme?view=azure-dotnet-preview&amp;preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.ResourceGraph_1.0.0-beta.1/sdk/resourcegraph/Azure.Provisioning.ResourceGraph/) |
| Provisioning - Search | NuGet [1.0.0](https://www.nuget.org/packages/Azure.Provisioning.Search/1.0.0)<br>NuGet [1.1.0-beta.1](https://www.nuget.org/packages/Azure.Provisioning.Search/1.1.0-beta.1) | [docs](/dotnet/api/overview/azure/Provisioning.Search-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.Search_1.0.0/sdk/provisioning/Azure.Provisioning.Search/)<br>GitHub [1.1.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.Search_1.1.0-beta.1/sdk/provisioning/Azure.Provisioning.Search/) |
| Provisioning - Securitycenter | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.Provisioning.SecurityCenter/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/Provisioning.SecurityCenter-readme?view=azure-dotnet-preview&amp;preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.SecurityCenter_1.0.0-beta.1/sdk/securitycenter/Azure.Provisioning.SecurityCenter/) |
| Provisioning - Service Bus | NuGet [1.1.0](https://www.nuget.org/packages/Azure.Provisioning.ServiceBus/1.1.0) | [docs](/dotnet/api/overview/azure/Provisioning.ServiceBus-readme) | GitHub [1.1.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Provisioning.ServiceBus_1.1.0/sdk/provisioning/Azure.Provisioning.ServiceBus/) |
Expand Down Expand Up @@ -280,7 +283,7 @@
| Resource Management - DevTest Labs | NuGet [1.1.2](https://www.nuget.org/packages/Azure.ResourceManager.DevTestLabs/1.1.2) | [docs](/dotnet/api/overview/azure/ResourceManager.DevTestLabs-readme) | GitHub [1.1.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.DevTestLabs_1.1.2/sdk/devtestlabs/Azure.ResourceManager.DevTestLabs/) |
| Resource Management - Digital Twins | NuGet [1.3.1](https://www.nuget.org/packages/Azure.ResourceManager.DigitalTwins/1.3.1) | [docs](/dotnet/api/overview/azure/ResourceManager.DigitalTwins-readme) | GitHub [1.3.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.DigitalTwins_1.3.1/sdk/digitaltwins/Azure.ResourceManager.DigitalTwins/) |
| Resource Management - Disconnectedoperations | NuGet [1.0.0](https://www.nuget.org/packages/Azure.ResourceManager.DisconnectedOperations/1.0.0) | [docs](/dotnet/api/overview/azure/ResourceManager.DisconnectedOperations-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.DisconnectedOperations_1.0.0/sdk/disconnectedoperations/Azure.ResourceManager.DisconnectedOperations/) |
| Resource Management - DNS | NuGet [1.1.1](https://www.nuget.org/packages/Azure.ResourceManager.Dns/1.1.1)<br>NuGet [1.2.0-beta.2](https://www.nuget.org/packages/Azure.ResourceManager.Dns/1.2.0-beta.2) | [docs](/dotnet/api/overview/azure/ResourceManager.Dns-readme) | GitHub [1.1.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.Dns_1.1.1/sdk/dns/Azure.ResourceManager.Dns/)<br>GitHub [1.2.0-beta.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.Dns_1.2.0-beta.2/sdk/dns/Azure.ResourceManager.Dns/) |
| Resource Management - DNS | NuGet [1.1.1](https://www.nuget.org/packages/Azure.ResourceManager.Dns/1.1.1)<br>NuGet [1.2.0-beta.3](https://www.nuget.org/packages/Azure.ResourceManager.Dns/1.2.0-beta.3) | [docs](/dotnet/api/overview/azure/ResourceManager.Dns-readme) | GitHub [1.1.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.Dns_1.1.1/sdk/dns/Azure.ResourceManager.Dns/)<br>GitHub [1.2.0-beta.3](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.Dns_1.2.0-beta.3/sdk/dns/Azure.ResourceManager.Dns/) |
| Resource Management - DNS Resolver | NuGet [1.2.0](https://www.nuget.org/packages/Azure.ResourceManager.DnsResolver/1.2.0)<br>NuGet [1.3.0-beta.1](https://www.nuget.org/packages/Azure.ResourceManager.DnsResolver/1.3.0-beta.1) | [docs](/dotnet/api/overview/azure/ResourceManager.DnsResolver-readme) | GitHub [1.2.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.DnsResolver_1.2.0/sdk/dnsresolver/Azure.ResourceManager.DnsResolver/)<br>GitHub [1.3.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.DnsResolver_1.3.0-beta.1/sdk/dnsresolver/Azure.ResourceManager.DnsResolver/) |
| Resource Management - Domainregistration | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.ResourceManager.DomainRegistration/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/ResourceManager.DomainRegistration-readme?view=azure-dotnet-preview&amp;preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.DomainRegistration_1.0.0-beta.1/sdk/domainregistration/Azure.ResourceManager.DomainRegistration/) |
| Resource Management - Durabletask | NuGet [1.1.0](https://www.nuget.org/packages/Azure.ResourceManager.DurableTask/1.1.0) | [docs](/dotnet/api/overview/azure/ResourceManager.DurableTask-readme) | GitHub [1.1.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.ResourceManager.DurableTask_1.1.0/sdk/durabletask/Azure.ResourceManager.DurableTask/) |
Expand Down
6 changes: 4 additions & 2 deletions docs/core/tools/dotnet-restore.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,8 +15,8 @@ ms.date: 09/29/2025

```dotnetcli
dotnet restore [<PROJECT>|<SOLUTION>|<FILE>]
[-a|--arch <ARCHITECTURE>] [--configfile <FILE>] [--disable-build-servers]
[--disable-parallel] [-f|--force] [--force-evaluate]
[-a|--arch <ARCHITECTURE>] [--artifacts-path <ARTIFACTS_DIR>] [--configfile <FILE>]
[--disable-build-servers] [--disable-parallel] [-f|--force] [--force-evaluate]
[--ignore-failed-sources] [--interactive] [--lock-file-path <LOCK_FILE_PATH>]
[--locked-mode] [--no-dependencies] [--no-http-cache]
[--os <OS>] [--packages <PACKAGES_DIRECTORY>]
Expand Down Expand Up @@ -93,6 +93,8 @@ There are three specific settings that `dotnet restore` ignores:

- [!INCLUDE [arch](includes/cli-arch.md)]

- [!INCLUDE [artifacts-path](includes/cli-artifacts-path.md)]

- [!INCLUDE [configfile](includes/cli-configfile.md)]

- [!INCLUDE [disable-build-servers](includes/cli-disable-build-servers.md)]
Expand Down
2 changes: 1 addition & 1 deletion docs/core/tools/includes/cli-artifacts-path.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ ms.topic: include
---
**`--artifacts-path <ARTIFACTS_DIR>`**

All build output files from the executed command will go in subfolders under the specified path, separated by project. For more information see [Artifacts Output Layout](../../sdk/artifacts-output.md). Available since .NET 8 SDK.
All build output files from the executed command will go in subfolders under the specified path, separated by project. For more information see [Artifacts Output Layout](../../sdk/artifacts-output.md). This option and the value provided must be explicitly cascaded in any `dotnet` command that depends on the output of another `dotnet` command, for example, when using `dotnet build --no-restore` and `dotnet publish --no-build`. Available since .NET 8 SDK.
15 changes: 12 additions & 3 deletions docs/csharp/language-reference/xmldoc/recommended-tags.md
Original file line number Diff line number Diff line change
Expand Up @@ -390,14 +390,23 @@ Add your XML comments in base classes or interfaces and let inheritdoc copy the

### `<include>`

```xml
<include file='filename' path='tagpath' />
<include file='filename' path='tagpath[@attribName]' />
<include file='filename' path='tagpath[@attribName="attribValue"]' />
<include file='filename' path='tagpath[@attribName1="attribValue1"][@attribName2="attribValue2"][@attribName3]' />
```

Recommendation:

```xml
<include file='filename' path='tagpath[@name="id"]' />
```

- `filename`: The name of the XML file containing the documentation. You can qualify the file name with a path relative to the source code file. Enclose `filename` in single quotation marks (' ').
- `tagpath`: The path of the tags in `filename` that leads to the tag `name`. Enclose the path in single quotation marks (' ').
- `name`: The name specifier in the tag that precedes the comments. The `name` specifier has an `id`.
- `id`: The ID for the tag that precedes the comments. Enclose the ID in quotation marks (").
- `path`: The path of the tags in `filename` that leads to the XML comment to use. The path may include one or multiple attributes like `name`, but they are not required. The attributes may have values like `id`, but values are not required either. Enclose the path including possible attributes in single quotation marks (' ').
- `attribName`, `attribName1`: The names of optional attributes.
- `attribValue`, `attribValue1`: The optional values of the attributes. If no value is specified, any value will be accepted when searching for the comment in `filename`. Enclose the attribute value in quotation marks (").

By using the `<include>` tag, you can refer to comments in another file that describe the types and members in your source code. Including an external file is an alternative to placing documentation comments directly in your source code file. By putting the documentation in a separate file, you can apply source control to the documentation separately from the source code. One person can have the source code file checked out and someone else can have the documentation file checked out. The `<include>` tag uses the XML XPath syntax. Refer to XPath documentation for ways to customize your `<include>` use.

Expand Down
6 changes: 4 additions & 2 deletions docs/csharp/misc/cs0112.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,11 @@ ms.assetid: 6741c7c4-8553-4bbe-b950-4f908e8d9ba3
---
# Compiler Error CS0112

A static member 'function' cannot be marked as override, virtual or abstract
A static member 'function' in a class or struct cannot be marked as override, virtual, or abstract.

Any method declaration that uses the `override`, **virtual**, or **abstract** keyword cannot also use the **static** keyword.
Any method declaration in a class or struct that uses the `override`, `virtual`, or `abstract` keyword cannot also use the `static` keyword.

Before C# 11, interface members could not combine `static` with `override`, `virtual`, or `abstract`. Beginning with C# 11, interface methods, properties, events, and operators can combine `static` with `abstract` or `virtual` by using `static abstract` or `static virtual`.

For more information, see [Methods](../programming-guide/classes-and-structs/methods.md).

Expand Down
33 changes: 22 additions & 11 deletions docs/csharp/misc/cs0409.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
---
description: "Compiler Error CS0409"
title: "Compiler Error CS0409"
ms.date: 07/20/2015
ms.date: 04/17/2026
f1_keywords:
- "CS0409"
helpviewer_keywords:
Expand All @@ -12,15 +12,26 @@ ms.assetid: 23d86c13-7978-41b7-a087-ffcea52476fa

A constraint clause has already been specified for type parameter 'type parameter'. All of the constraints for a type parameter must be specified in a single where clause.

Multiple constraint clauses (where clauses) were found for a single type parameter. Remove the extraneous where clause, or correct the where clauses so that a unique type parameter in each clause.
Multiple constraint clauses (where clauses) were found for a single type parameter. Remove the extraneous where clause, or correct the where clauses so that a unique type parameter in each clause.

```csharp
// CS0409.cs
interface I
{
}

class C<T1, T2> where T1 : I where T1 : I // CS0409 – T1 used twice
{
}
```csharp
// CS0409.cs
interface I
{
}

// Compiler error CS0409 is reported on the following line because T is specified in multiple where clauses.
class Example<T> where T : I where T : new()
{
}

// To resolve the error, combine the constraints for the same type parameter into a single clause.
class Example<T> where T : I, new()
{
}

// Using multiple where clauses is only valid when targeting different type parameters.
class Example<T1, T2> where T1 : I where T2 : new()
{
}
```
Loading
Loading