diff --git a/.github/workflows/profanity-filter.yml b/.github/workflows/profanity-filter.yml
index d683bd46965c9..e8bb5f9605313 100644
--- a/.github/workflows/profanity-filter.yml
+++ b/.github/workflows/profanity-filter.yml
@@ -25,7 +25,7 @@ jobs:
- name: Profanity filter
if: ${{ github.actor != 'dependabot[bot]' && github.actor != 'github-actions[bot]' }}
- uses: IEvangelist/profanity-filter@197ef76452b19a7b5b737fffa3e9f5a1472b5df8 # main
+ uses: IEvangelist/profanity-filter@221fd3e2de42e4aa8acc56d0739b1134065a54be # main
id: profanity-filter
with:
token: ${{ secrets.GITHUB_TOKEN }}
diff --git a/.github/workflows/scorecards.yml b/.github/workflows/scorecards.yml
index cf335ffc7da6c..85fb9e024928c 100644
--- a/.github/workflows/scorecards.yml
+++ b/.github/workflows/scorecards.yml
@@ -71,6 +71,6 @@ jobs:
# Upload the results to GitHub's code scanning dashboard.
- name: "Upload to code-scanning"
- uses: github/codeql-action/upload-sarif@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d # v3.28.10
+ uses: github/codeql-action/upload-sarif@6bb031afdd8eb862ea3fc1848194185e076637e5 # v3.28.11
with:
sarif_file: results.sarif
diff --git a/docs/ai/how-to/snippets/hosted-app-auth/hosted-app-auth.csproj b/docs/ai/how-to/snippets/hosted-app-auth/hosted-app-auth.csproj
index ce616f605ade8..106ad23813969 100644
--- a/docs/ai/how-to/snippets/hosted-app-auth/hosted-app-auth.csproj
+++ b/docs/ai/how-to/snippets/hosted-app-auth/hosted-app-auth.csproj
@@ -10,9 +10,9 @@
-
-
-
+
+
+
diff --git a/docs/ai/quickstarts/snippets/build-chat-app/azure-openai/ChatAppAI.csproj b/docs/ai/quickstarts/snippets/build-chat-app/azure-openai/ChatAppAI.csproj
index 5638d8c175ccd..912e2c8078a87 100644
--- a/docs/ai/quickstarts/snippets/build-chat-app/azure-openai/ChatAppAI.csproj
+++ b/docs/ai/quickstarts/snippets/build-chat-app/azure-openai/ChatAppAI.csproj
@@ -11,9 +11,9 @@
-
-
-
+
+
+
diff --git a/docs/ai/quickstarts/snippets/build-chat-app/openai/ExtensionsOpenAI.csproj b/docs/ai/quickstarts/snippets/build-chat-app/openai/ExtensionsOpenAI.csproj
index ce77307cc2764..c8fe3a8650111 100644
--- a/docs/ai/quickstarts/snippets/build-chat-app/openai/ExtensionsOpenAI.csproj
+++ b/docs/ai/quickstarts/snippets/build-chat-app/openai/ExtensionsOpenAI.csproj
@@ -8,9 +8,9 @@
-
-
-
+
+
+
diff --git a/docs/ai/quickstarts/snippets/function-calling/azure-openai/FunctionCallingAI.csproj b/docs/ai/quickstarts/snippets/function-calling/azure-openai/FunctionCallingAI.csproj
index c496148cf5529..a2242a91edc13 100644
--- a/docs/ai/quickstarts/snippets/function-calling/azure-openai/FunctionCallingAI.csproj
+++ b/docs/ai/quickstarts/snippets/function-calling/azure-openai/FunctionCallingAI.csproj
@@ -13,8 +13,8 @@
-
-
+
+
diff --git a/docs/ai/quickstarts/snippets/image-generation/azure-openai/ImagesAzureOpenAI.csproj b/docs/ai/quickstarts/snippets/image-generation/azure-openai/ImagesAzureOpenAI.csproj
index 8a8a849d8b276..8e491580ca8ab 100644
--- a/docs/ai/quickstarts/snippets/image-generation/azure-openai/ImagesAzureOpenAI.csproj
+++ b/docs/ai/quickstarts/snippets/image-generation/azure-openai/ImagesAzureOpenAI.csproj
@@ -10,8 +10,8 @@
-
-
+
+
diff --git a/docs/ai/quickstarts/snippets/image-generation/openai/ImagesOpenAI.csproj b/docs/ai/quickstarts/snippets/image-generation/openai/ImagesOpenAI.csproj
index 4c0c1897c3da6..7cfc4211300e0 100644
--- a/docs/ai/quickstarts/snippets/image-generation/openai/ImagesOpenAI.csproj
+++ b/docs/ai/quickstarts/snippets/image-generation/openai/ImagesOpenAI.csproj
@@ -10,8 +10,8 @@
-
-
+
+
diff --git a/docs/ai/quickstarts/snippets/local-ai/ollama.csproj b/docs/ai/quickstarts/snippets/local-ai/ollama.csproj
index 27429efffe7d8..0d48e013baced 100644
--- a/docs/ai/quickstarts/snippets/local-ai/ollama.csproj
+++ b/docs/ai/quickstarts/snippets/local-ai/ollama.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/docs/ai/quickstarts/snippets/prompt-completion/azure-openai/ExtensionsAzureOpenAI.csproj b/docs/ai/quickstarts/snippets/prompt-completion/azure-openai/ExtensionsAzureOpenAI.csproj
index c17559bfd06dd..e9d5b64b9e880 100644
--- a/docs/ai/quickstarts/snippets/prompt-completion/azure-openai/ExtensionsAzureOpenAI.csproj
+++ b/docs/ai/quickstarts/snippets/prompt-completion/azure-openai/ExtensionsAzureOpenAI.csproj
@@ -10,9 +10,9 @@
-
-
-
+
+
+
diff --git a/docs/ai/quickstarts/snippets/prompt-completion/openai/ExtensionsOpenAI.csproj b/docs/ai/quickstarts/snippets/prompt-completion/openai/ExtensionsOpenAI.csproj
index ce77307cc2764..c8fe3a8650111 100644
--- a/docs/ai/quickstarts/snippets/prompt-completion/openai/ExtensionsOpenAI.csproj
+++ b/docs/ai/quickstarts/snippets/prompt-completion/openai/ExtensionsOpenAI.csproj
@@ -8,9 +8,9 @@
-
-
-
+
+
+
diff --git a/docs/ai/tutorials/snippets/llm-eval/llm-eval.csproj b/docs/ai/tutorials/snippets/llm-eval/llm-eval.csproj
index cefa1a0bb3f79..f9612b6bb0d3d 100644
--- a/docs/ai/tutorials/snippets/llm-eval/llm-eval.csproj
+++ b/docs/ai/tutorials/snippets/llm-eval/llm-eval.csproj
@@ -10,9 +10,9 @@
-
-
-
+
+
+
diff --git a/docs/azure/includes/dotnet-all.md b/docs/azure/includes/dotnet-all.md
index d1064c7c46bed..9990b7dfc76f1 100644
--- a/docs/azure/includes/dotnet-all.md
+++ b/docs/azure/includes/dotnet-all.md
@@ -3,7 +3,7 @@
| AI Foundry | NuGet [1.0.0-beta.4](https://www.nuget.org/packages/Azure.AI.Projects/1.0.0-beta.4) | [docs](/dotnet/api/overview/azure/AI.Projects-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.4](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Projects_1.0.0-beta.4/sdk/ai/Azure.AI.Projects/) |
| AI Model Inference | NuGet [1.0.0-beta.3](https://www.nuget.org/packages/Azure.AI.Inference/1.0.0-beta.3) | [docs](/dotnet/api/overview/azure/AI.Inference-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.3](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Inference_1.0.0-beta.3/sdk/ai/Azure.AI.Inference/) |
| Anomaly Detector | NuGet [3.0.0-preview.7](https://www.nuget.org/packages/Azure.AI.AnomalyDetector/3.0.0-preview.7) | [docs](/dotnet/api/overview/azure/AI.AnomalyDetector-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [3.0.0-preview.7](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.AnomalyDetector_3.0.0-preview.7/sdk/anomalydetector/Azure.AI.AnomalyDetector/) |
-| App Configuration | NuGet [1.5.0](https://www.nuget.org/packages/Azure.Data.AppConfiguration/1.5.0) | [docs](/dotnet/api/overview/azure/Data.AppConfiguration-readme) | GitHub [1.5.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Data.AppConfiguration_1.5.0/sdk/appconfiguration/Azure.Data.AppConfiguration/) |
+| App Configuration | NuGet [1.6.0](https://www.nuget.org/packages/Azure.Data.AppConfiguration/1.6.0) | [docs](/dotnet/api/overview/azure/Data.AppConfiguration-readme) | GitHub [1.6.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Data.AppConfiguration_1.6.0/sdk/appconfiguration/Azure.Data.AppConfiguration/) |
| App Configuration Provider | NuGet [8.1.1](https://www.nuget.org/packages/Microsoft.Extensions.Configuration.AzureAppConfiguration/8.1.1) | | GitHub [8.1.1](https://github.com/Azure/AppConfiguration-DotnetProvider) |
| Attestation | NuGet [1.0.0](https://www.nuget.org/packages/Azure.Security.Attestation/1.0.0) | [docs](/dotnet/api/overview/azure/Security.Attestation-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Security.Attestation_1.0.0/sdk/attestation/Azure.Security.Attestation/) |
| Azure AI Search | NuGet [11.6.0](https://www.nuget.org/packages/Azure.Search.Documents/11.6.0)
NuGet [11.7.0-beta.2](https://www.nuget.org/packages/Azure.Search.Documents/11.7.0-beta.2) | [docs](/dotnet/api/overview/azure/Search.Documents-readme) | GitHub [11.6.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Search.Documents_11.6.0/sdk/search/Azure.Search.Documents/)
GitHub [11.7.0-beta.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Search.Documents_11.7.0-beta.2/sdk/search/Azure.Search.Documents/) |
@@ -27,6 +27,7 @@
| Container Registry | NuGet [1.2.0](https://www.nuget.org/packages/Azure.Containers.ContainerRegistry/1.2.0) | [docs](/dotnet/api/overview/azure/Containers.ContainerRegistry-readme) | GitHub [1.2.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Containers.ContainerRegistry_1.2.0/sdk/containerregistry/Azure.Containers.ContainerRegistry/) |
| Content Safety | NuGet [1.0.0](https://www.nuget.org/packages/Azure.AI.ContentSafety/1.0.0) | [docs](/dotnet/api/overview/azure/AI.ContentSafety-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.ContentSafety_1.0.0/sdk/contentsafety/Azure.AI.ContentSafety/) |
| Conversational Language Understanding | NuGet [1.1.0](https://www.nuget.org/packages/Azure.AI.Language.Conversations/1.1.0)
NuGet [2.0.0-beta.2](https://www.nuget.org/packages/Azure.AI.Language.Conversations/2.0.0-beta.2) | [docs](/dotnet/api/overview/azure/AI.Language.Conversations-readme) | GitHub [1.1.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Language.Conversations_1.1.0/sdk/cognitivelanguage/Azure.AI.Language.Conversations/)
GitHub [2.0.0-beta.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Language.Conversations_2.0.0-beta.2/sdk/cognitivelanguage/Azure.AI.Language.Conversations/) |
+| Conversations Authoring | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.AI.Language.Conversations.Authoring/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/AI.Language.Conversations.Authoring-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Language.Conversations.Authoring_1.0.0-beta.1/sdk/cognitivelanguage/Azure.AI.Language.Conversations.Authoring/) |
| Core - Client - AMQP | NuGet [1.3.1](https://www.nuget.org/packages/Azure.Core.Amqp/1.3.1) | [docs](/dotnet/api/overview/azure/Core.Amqp-readme) | GitHub [1.3.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Core.Amqp_1.3.1/sdk/core/Azure.Core.Amqp/) |
| Core - Client - Core | NuGet [1.45.0](https://www.nuget.org/packages/Azure.Core/1.45.0) | [docs](/dotnet/api/overview/azure/Core-readme) | GitHub [1.45.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Core_1.45.0/sdk/core/Azure.Core/) |
| Core Newtonsoft Json | NuGet [2.0.0](https://www.nuget.org/packages/Microsoft.Azure.Core.NewtonsoftJson/2.0.0) | [docs](/dotnet/api/overview/azure/Microsoft.Azure.Core.NewtonsoftJson-readme) | GitHub [2.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.Core.NewtonsoftJson_2.0.0/sdk/core/Microsoft.Azure.Core.NewtonsoftJson/) |
@@ -52,8 +53,8 @@
| Health Insights Cancer Profiling | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.Health.Insights.CancerProfiling/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/Health.Insights.CancerProfiling-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Health.Insights.CancerProfiling_1.0.0-beta.1/sdk/healthinsights/Azure.Health.Insights.CancerProfiling/) |
| Health Insights Clinical Matching | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.Health.Insights.ClinicalMatching/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/Health.Insights.ClinicalMatching-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Health.Insights.ClinicalMatching_1.0.0-beta.1/sdk/healthinsights/Azure.Health.Insights.ClinicalMatching/) |
| Health Insights Radiology Insights | NuGet [1.0.0](https://www.nuget.org/packages/Azure.Health.Insights.RadiologyInsights/1.0.0) | [docs](/dotnet/api/overview/azure/Health.Insights.RadiologyInsights-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Health.Insights.RadiologyInsights_1.0.0/sdk/healthinsights/Azure.Health.Insights.RadiologyInsights/) |
-| Identity | NuGet [1.13.2](https://www.nuget.org/packages/Azure.Identity/1.13.2)
NuGet [1.14.0-beta.1](https://www.nuget.org/packages/Azure.Identity/1.14.0-beta.1) | [docs](/dotnet/api/overview/azure/Identity-readme) | GitHub [1.13.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Identity_1.13.2/sdk/identity/Azure.Identity/)
GitHub [1.14.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Identity_1.14.0-beta.1/sdk/identity/Azure.Identity/) |
-| Identity Broker | NuGet [1.2.0](https://www.nuget.org/packages/Azure.Identity.Broker/1.2.0) | [docs](/dotnet/api/overview/azure/Identity.Broker-readme) | GitHub [1.2.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Identity.Broker_1.2.0/sdk/identity/Azure.Identity.Broker/) |
+| Identity | NuGet [1.13.2](https://www.nuget.org/packages/Azure.Identity/1.13.2)
NuGet [1.14.0-beta.2](https://www.nuget.org/packages/Azure.Identity/1.14.0-beta.2) | [docs](/dotnet/api/overview/azure/Identity-readme) | GitHub [1.13.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Identity_1.13.2/sdk/identity/Azure.Identity/)
GitHub [1.14.0-beta.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Identity_1.14.0-beta.2/sdk/identity/Azure.Identity/) |
+| Identity Broker | NuGet [1.2.0](https://www.nuget.org/packages/Azure.Identity.Broker/1.2.0)
NuGet [1.3.0-beta.1](https://www.nuget.org/packages/Azure.Identity.Broker/1.3.0-beta.1) | [docs](/dotnet/api/overview/azure/Identity.Broker-readme) | GitHub [1.2.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Identity.Broker_1.2.0/sdk/identity/Azure.Identity.Broker/)
GitHub [1.3.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Identity.Broker_1.3.0-beta.1/sdk/identity/Azure.Identity.Broker/) |
| Image Analysis | NuGet [1.0.0](https://www.nuget.org/packages/Azure.AI.Vision.ImageAnalysis/1.0.0) | [docs](/dotnet/api/overview/azure/AI.Vision.ImageAnalysis-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Vision.ImageAnalysis_1.0.0/sdk/vision/Azure.AI.Vision.ImageAnalysis/) |
| Key Vault - Administration | NuGet [4.5.0](https://www.nuget.org/packages/Azure.Security.KeyVault.Administration/4.5.0) | [docs](/dotnet/api/overview/azure/Security.KeyVault.Administration-readme) | GitHub [4.5.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Security.KeyVault.Administration_4.5.0/sdk/keyvault/Azure.Security.KeyVault.Administration/) |
| Key Vault - Certificates | NuGet [4.7.0](https://www.nuget.org/packages/Azure.Security.KeyVault.Certificates/4.7.0) | [docs](/dotnet/api/overview/azure/Security.KeyVault.Certificates-readme) | GitHub [4.7.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Security.KeyVault.Certificates_4.7.0/sdk/keyvault/Azure.Security.KeyVault.Certificates/) |
@@ -96,12 +97,12 @@
| Schema Registry | NuGet [1.4.0](https://www.nuget.org/packages/Azure.Data.SchemaRegistry/1.4.0) | [docs](/dotnet/api/overview/azure/Data.SchemaRegistry-readme) | GitHub [1.4.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Data.SchemaRegistry_1.4.0/sdk/schemaregistry/Azure.Data.SchemaRegistry/) |
| Schema Registry - Avro | NuGet [1.0.1](https://www.nuget.org/packages/Microsoft.Azure.Data.SchemaRegistry.ApacheAvro/1.0.1) | [docs](/dotnet/api/overview/azure/Microsoft.Azure.Data.SchemaRegistry.ApacheAvro-readme) | GitHub [1.0.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.Data.SchemaRegistry.ApacheAvro_1.0.1/sdk/schemaregistry/Microsoft.Azure.Data.SchemaRegistry.ApacheAvro/) |
| Service Bus | NuGet [7.18.4](https://www.nuget.org/packages/Azure.Messaging.ServiceBus/7.18.4) | [docs](/dotnet/api/overview/azure/Messaging.ServiceBus-readme) | GitHub [7.18.4](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Messaging.ServiceBus_7.18.4/sdk/servicebus/Azure.Messaging.ServiceBus/) |
-| Storage - Blobs | NuGet [12.23.0](https://www.nuget.org/packages/Azure.Storage.Blobs/12.23.0)
NuGet [12.24.0-beta.1](https://www.nuget.org/packages/Azure.Storage.Blobs/12.24.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.Blobs-readme) | GitHub [12.23.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs_12.23.0/sdk/storage/Azure.Storage.Blobs/)
GitHub [12.24.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs_12.24.0-beta.1/sdk/storage/Azure.Storage.Blobs/) |
-| Storage - Blobs Batch | NuGet [12.20.0](https://www.nuget.org/packages/Azure.Storage.Blobs.Batch/12.20.0)
NuGet [12.21.0-beta.1](https://www.nuget.org/packages/Azure.Storage.Blobs.Batch/12.21.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.Blobs.Batch-readme) | GitHub [12.20.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs.Batch_12.20.0/sdk/storage/Azure.Storage.Blobs.Batch/)
GitHub [12.21.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs.Batch_12.21.0-beta.1/sdk/storage/Azure.Storage.Blobs.Batch/) |
-| Storage - Blobs ChangeFeed | NuGet [12.0.0-preview.53](https://www.nuget.org/packages/Azure.Storage.Blobs.ChangeFeed/12.0.0-preview.53) | [docs](/dotnet/api/overview/azure/Storage.Blobs.ChangeFeed-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [12.0.0-preview.53](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs.ChangeFeed_12.0.0-preview.53/sdk/storage/Azure.Storage.Blobs.ChangeFeed/) |
-| Storage - Files Data Lake | NuGet [12.21.0](https://www.nuget.org/packages/Azure.Storage.Files.DataLake/12.21.0)
NuGet [12.22.0-beta.1](https://www.nuget.org/packages/Azure.Storage.Files.DataLake/12.22.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.Files.DataLake-readme) | GitHub [12.21.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Files.DataLake_12.21.0/sdk/storage/Azure.Storage.Files.DataLake/)
GitHub [12.22.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Files.DataLake_12.22.0-beta.1/sdk/storage/Azure.Storage.Files.DataLake/) |
-| Storage - Files Share | NuGet [12.21.0](https://www.nuget.org/packages/Azure.Storage.Files.Shares/12.21.0)
NuGet [12.22.0-beta.1](https://www.nuget.org/packages/Azure.Storage.Files.Shares/12.22.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.Files.Shares-readme) | GitHub [12.21.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Files.Shares_12.21.0/sdk/storage/Azure.Storage.Files.Shares/)
GitHub [12.22.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Files.Shares_12.22.0-beta.1/sdk/storage/Azure.Storage.Files.Shares/) |
-| Storage - Queues | NuGet [12.21.0](https://www.nuget.org/packages/Azure.Storage.Queues/12.21.0)
NuGet [12.22.0-beta.1](https://www.nuget.org/packages/Azure.Storage.Queues/12.22.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.Queues-readme) | GitHub [12.21.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Queues_12.21.0/sdk/storage/Azure.Storage.Queues/)
GitHub [12.22.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Queues_12.22.0-beta.1/sdk/storage/Azure.Storage.Queues/) |
+| Storage - Blobs | NuGet [12.24.0](https://www.nuget.org/packages/Azure.Storage.Blobs/12.24.0) | [docs](/dotnet/api/overview/azure/Storage.Blobs-readme) | GitHub [12.24.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs_12.24.0/sdk/storage/Azure.Storage.Blobs/) |
+| Storage - Blobs Batch | NuGet [12.21.0](https://www.nuget.org/packages/Azure.Storage.Blobs.Batch/12.21.0) | [docs](/dotnet/api/overview/azure/Storage.Blobs.Batch-readme) | GitHub [12.21.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs.Batch_12.21.0/sdk/storage/Azure.Storage.Blobs.Batch/) |
+| Storage - Blobs ChangeFeed | NuGet [12.0.0-preview.54](https://www.nuget.org/packages/Azure.Storage.Blobs.ChangeFeed/12.0.0-preview.54) | [docs](/dotnet/api/overview/azure/Storage.Blobs.ChangeFeed-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [12.0.0-preview.54](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs.ChangeFeed_12.0.0-preview.54/sdk/storage/Azure.Storage.Blobs.ChangeFeed/) |
+| Storage - Files Data Lake | NuGet [12.22.0](https://www.nuget.org/packages/Azure.Storage.Files.DataLake/12.22.0) | [docs](/dotnet/api/overview/azure/Storage.Files.DataLake-readme) | GitHub [12.22.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Files.DataLake_12.22.0/sdk/storage/Azure.Storage.Files.DataLake/) |
+| Storage - Files Share | NuGet [12.22.0](https://www.nuget.org/packages/Azure.Storage.Files.Shares/12.22.0) | [docs](/dotnet/api/overview/azure/Storage.Files.Shares-readme) | GitHub [12.22.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Files.Shares_12.22.0/sdk/storage/Azure.Storage.Files.Shares/) |
+| Storage - Queues | NuGet [12.22.0](https://www.nuget.org/packages/Azure.Storage.Queues/12.22.0) | [docs](/dotnet/api/overview/azure/Storage.Queues-readme) | GitHub [12.22.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Queues_12.22.0/sdk/storage/Azure.Storage.Queues/) |
| Synapse - AccessControl | NuGet [1.0.0-preview.5](https://www.nuget.org/packages/Azure.Analytics.Synapse.AccessControl/1.0.0-preview.5) | [docs](/dotnet/api/overview/azure/Analytics.Synapse.AccessControl-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-preview.5](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Analytics.Synapse.AccessControl_1.0.0-preview.5/sdk/synapse/Azure.Analytics.Synapse.AccessControl/) |
| Synapse - Artifacts | NuGet [1.0.0-preview.21](https://www.nuget.org/packages/Azure.Analytics.Synapse.Artifacts/1.0.0-preview.21) | [docs](/dotnet/api/overview/azure/Analytics.Synapse.Artifacts-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-preview.21](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Analytics.Synapse.Artifacts_1.0.0-preview.21/sdk/synapse/Azure.Analytics.Synapse.Artifacts/) |
| Synapse - Managed Private Endpoints | NuGet [1.0.0-beta.5](https://www.nuget.org/packages/Azure.Analytics.Synapse.ManagedPrivateEndpoints/1.0.0-beta.5) | [docs](/dotnet/api/overview/azure/Analytics.Synapse.ManagedPrivateEndpoints-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.5](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Analytics.Synapse.ManagedPrivateEndpoints_1.0.0-beta.5/sdk/synapse/Azure.Analytics.Synapse.ManagedPrivateEndpoints/) |
@@ -111,11 +112,10 @@
| System.ClientModel | NuGet [1.3.0](https://www.nuget.org/packages/System.ClientModel/1.3.0)
NuGet [1.4.0-beta.1](https://www.nuget.org/packages/System.ClientModel/1.4.0-beta.1) | [docs](/dotnet/api/overview/azure/System.ClientModel-readme) | GitHub [1.3.0](https://github.com/Azure/azure-sdk-for-net/tree/System.ClientModel_1.3.0/sdk/core/System.ClientModel/)
GitHub [1.4.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/System.ClientModel_1.4.0-beta.1/sdk/core/System.ClientModel/) |
| Tables | NuGet [12.10.0](https://www.nuget.org/packages/Azure.Data.Tables/12.10.0) | [docs](/dotnet/api/overview/azure/Data.Tables-readme) | GitHub [12.10.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Data.Tables_12.10.0/sdk/tables/Azure.Data.Tables/) |
| Text Analytics | NuGet [5.3.0](https://www.nuget.org/packages/Azure.AI.TextAnalytics/5.3.0) | [docs](/dotnet/api/overview/azure/AI.TextAnalytics-readme) | GitHub [5.3.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.TextAnalytics_5.3.0/sdk/textanalytics/Azure.AI.TextAnalytics/) |
+| Text Authoring | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.AI.Language.Text.Authoring/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/AI.Language.Text.Authoring-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Language.Text.Authoring_1.0.0-beta.1/sdk/cognitivelanguage/Azure.AI.Language.Text.Authoring/) |
| Text Translation | NuGet [1.0.0](https://www.nuget.org/packages/Azure.AI.Translation.Text/1.0.0) | [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/) |
| 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&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&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.Language.Conversations.Authoring/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/AI.Language.Conversations.Authoring-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Language.Conversations.Authoring_1.0.0-beta.1/sdk/cognitivelanguage/Azure.AI.Language.Conversations.Authoring/) |
-| unknown | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.AI.Language.Text.Authoring/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/AI.Language.Text.Authoring-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Language.Text.Authoring_1.0.0-beta.1/sdk/cognitivelanguage/Azure.AI.Language.Text.Authoring/) |
| Vision Common | NuGet [0.15.1-beta.1](https://www.nuget.org/packages/Azure.AI.Vision.Common/0.15.1-beta.1) | | GitHub [0.15.1-beta.1](https://msasg.visualstudio.com/Skyman/_git/Carbon) |
| WCF Storage Queues | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Microsoft.WCF.Azure.StorageQueues/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/Microsoft.WCF.Azure.StorageQueues-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.WCF.Azure.StorageQueues_1.0.0-beta.1/sdk/extension-wcf/Microsoft.WCF.Azure.StorageQueues/) |
| Web PubSub | NuGet [1.4.0](https://www.nuget.org/packages/Azure.Messaging.WebPubSub/1.4.0) | [docs](/dotnet/api/overview/azure/Messaging.WebPubSub-readme) | GitHub [1.4.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Messaging.WebPubSub_1.4.0/sdk/webpubsub/Azure.Messaging.WebPubSub/) |
@@ -128,7 +128,7 @@
| Functions extension for Azure Tables | NuGet [1.3.2](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.Tables/1.3.2) | [docs](/dotnet/api/overview/azure/Microsoft.Azure.WebJobs.Extensions.Tables-readme) | GitHub [1.3.2](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.WebJobs.Extensions.Tables_1.3.2/sdk/tables/Microsoft.Azure.WebJobs.Extensions.Tables/) |
| Key Encryptor for .NET Data Protection | NuGet [1.4.0](https://www.nuget.org/packages/Azure.Extensions.AspNetCore.DataProtection.Keys/1.4.0) | [docs](/dotnet/api/overview/azure/Extensions.AspNetCore.DataProtection.Keys-readme) | GitHub [1.4.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Extensions.AspNetCore.DataProtection.Keys_1.4.0/sdk/extensions/Azure.Extensions.AspNetCore.DataProtection.Keys/) |
| Secrets Configuration Provider for .NET | NuGet [1.4.0](https://www.nuget.org/packages/Azure.Extensions.AspNetCore.Configuration.Secrets/1.4.0) | [docs](/dotnet/api/overview/azure/Extensions.AspNetCore.Configuration.Secrets-readme) | GitHub [1.4.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Extensions.AspNetCore.Configuration.Secrets_1.4.0/sdk/extensions/Azure.Extensions.AspNetCore.Configuration.Secrets/) |
-| Storage - Common | NuGet [12.22.0](https://www.nuget.org/packages/Azure.Storage.Common/12.22.0)
NuGet [12.23.0-beta.1](https://www.nuget.org/packages/Azure.Storage.Common/12.23.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.Common-readme) | GitHub [12.22.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Common_12.22.0/sdk/storage/Azure.Storage.Common/)
GitHub [12.23.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Common_12.23.0-beta.1/sdk/storage/Azure.Storage.Common/) |
+| Storage - Common | NuGet [12.23.0](https://www.nuget.org/packages/Azure.Storage.Common/12.23.0) | [docs](/dotnet/api/overview/azure/Storage.Common-readme) | GitHub [12.23.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Common_12.23.0/sdk/storage/Azure.Storage.Common/) |
| WebJobs Extensions - Event Grid | NuGet [3.4.3](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.EventGrid/3.4.3) | [docs](/dotnet/api/overview/azure/Microsoft.Azure.WebJobs.Extensions.EventGrid-readme) | GitHub [3.4.3](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.WebJobs.Extensions.EventGrid_3.4.3/sdk/eventgrid/Microsoft.Azure.WebJobs.Extensions.EventGrid/) |
| WebJobs Extensions - Event Hubs | NuGet [6.3.5](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.EventHubs/6.3.5) | [docs](/dotnet/api/overview/azure/Microsoft.Azure.WebJobs.Extensions.EventHubs-readme) | GitHub [6.3.5](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.WebJobs.Extensions.EventHubs_6.3.5/sdk/eventhub/Microsoft.Azure.WebJobs.Extensions.EventHubs/) |
| WebJobs Extensions - Service Bus | NuGet [5.16.4](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.ServiceBus/5.16.4) | [docs](/dotnet/api/overview/azure/Microsoft.Azure.WebJobs.Extensions.ServiceBus-readme) | GitHub [5.16.4](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.WebJobs.Extensions.ServiceBus_5.16.4/sdk/servicebus/Microsoft.Azure.WebJobs.Extensions.ServiceBus/) |
@@ -361,7 +361,7 @@
| App Configuration Extension | NuGet [8.1.1](https://www.nuget.org/packages/Microsoft.Azure.AppConfiguration.Functions.Worker/8.1.1) | | |
| App Configuration Provider | NuGet [8.1.1](https://www.nuget.org/packages/Microsoft.Azure.AppConfiguration.AspNetCore/8.1.1) | | |
| Azure.Communication.Administration | NuGet [1.0.0-beta.3](https://www.nuget.org/packages/Azure.Communication.Administration/1.0.0-beta.3) | | |
-| Communication Calling Windows Client | NuGet [1.11.0](https://www.nuget.org/packages/Azure.Communication.Calling.WindowsClient/1.11.0) | | |
+| Communication Calling Windows Client | NuGet [1.11.1](https://www.nuget.org/packages/Azure.Communication.Calling.WindowsClient/1.11.1) | | |
| DotNetty | NuGet [0.7.6](https://www.nuget.org/packages/DotNetty.Common/0.7.6) | | |
| HTTP ASPNETCore Analyzers | NuGet [1.0.3](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.Http.AspNetCore.Analyzers/1.0.3) | | |
| Item Templates NetCore | NuGet [4.0.5051](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.ItemTemplates.NetCore/4.0.5051) | | |
@@ -371,7 +371,7 @@
| System Net Client Model | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/System.Net.ClientModel/1.0.0-beta.1) | | |
| Unknown Display Name | NuGet [1.0.1-beta.4](https://www.nuget.org/packages/Azure.AI.ContentSafety.Extension.Embedded.Image/1.0.1-beta.4) | | |
| Unknown Display Name | NuGet [1.0.0](https://www.nuget.org/packages/Azure.AI.ContentSafety.Extension.Embedded.Text/1.0.0)
NuGet [1.0.1-beta.4](https://www.nuget.org/packages/Azure.AI.ContentSafety.Extension.Embedded.Text/1.0.1-beta.4) | | |
-| Unknown Display Name | NuGet [1.0.0-beta1](https://www.nuget.org/packages/Azure.Monitor.OpenTelemetry.Profiler/1.0.0-beta1) | | |
+| Unknown Display Name | NuGet [1.0.0-beta2](https://www.nuget.org/packages/Azure.Monitor.OpenTelemetry.Profiler/1.0.0-beta2) | | |
| Unknown Display Name | NuGet [1.0.0-beta.0](https://www.nuget.org/packages/Microsoft.Azure.Cosmos.FaultInjection/1.0.0-beta.0) | | |
| Unknown Display Name | NuGet [1.0.44](https://www.nuget.org/packages/Microsoft.Azure.Functions.Worker.Extensions.MySql/1.0.44) | | |
| Unknown Display Name | NuGet [1.0.44](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.MySql/1.0.44) | | |
diff --git a/docs/azure/includes/dotnet-new.md b/docs/azure/includes/dotnet-new.md
index 0b8c7cefa79d1..c15de236f6293 100644
--- a/docs/azure/includes/dotnet-new.md
+++ b/docs/azure/includes/dotnet-new.md
@@ -3,7 +3,7 @@
| AI Foundry | NuGet [1.0.0-beta.4](https://www.nuget.org/packages/Azure.AI.Projects/1.0.0-beta.4) | [docs](/dotnet/api/overview/azure/AI.Projects-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.4](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Projects_1.0.0-beta.4/sdk/ai/Azure.AI.Projects/) |
| AI Model Inference | NuGet [1.0.0-beta.3](https://www.nuget.org/packages/Azure.AI.Inference/1.0.0-beta.3) | [docs](/dotnet/api/overview/azure/AI.Inference-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.3](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Inference_1.0.0-beta.3/sdk/ai/Azure.AI.Inference/) |
| Anomaly Detector | NuGet [3.0.0-preview.7](https://www.nuget.org/packages/Azure.AI.AnomalyDetector/3.0.0-preview.7) | [docs](/dotnet/api/overview/azure/AI.AnomalyDetector-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [3.0.0-preview.7](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.AnomalyDetector_3.0.0-preview.7/sdk/anomalydetector/Azure.AI.AnomalyDetector/) |
-| App Configuration | NuGet [1.5.0](https://www.nuget.org/packages/Azure.Data.AppConfiguration/1.5.0) | [docs](/dotnet/api/overview/azure/Data.AppConfiguration-readme) | GitHub [1.5.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Data.AppConfiguration_1.5.0/sdk/appconfiguration/Azure.Data.AppConfiguration/) |
+| App Configuration | NuGet [1.6.0](https://www.nuget.org/packages/Azure.Data.AppConfiguration/1.6.0) | [docs](/dotnet/api/overview/azure/Data.AppConfiguration-readme) | GitHub [1.6.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Data.AppConfiguration_1.6.0/sdk/appconfiguration/Azure.Data.AppConfiguration/) |
| App Configuration Provider | NuGet [8.1.1](https://www.nuget.org/packages/Microsoft.Extensions.Configuration.AzureAppConfiguration/8.1.1) | | GitHub [8.1.1](https://github.com/Azure/AppConfiguration-DotnetProvider) |
| Attestation | NuGet [1.0.0](https://www.nuget.org/packages/Azure.Security.Attestation/1.0.0) | [docs](/dotnet/api/overview/azure/Security.Attestation-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Security.Attestation_1.0.0/sdk/attestation/Azure.Security.Attestation/) |
| Azure AI Search | NuGet [11.6.0](https://www.nuget.org/packages/Azure.Search.Documents/11.6.0)
NuGet [11.7.0-beta.2](https://www.nuget.org/packages/Azure.Search.Documents/11.7.0-beta.2) | [docs](/dotnet/api/overview/azure/Search.Documents-readme) | GitHub [11.6.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Search.Documents_11.6.0/sdk/search/Azure.Search.Documents/)
GitHub [11.7.0-beta.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Search.Documents_11.7.0-beta.2/sdk/search/Azure.Search.Documents/) |
@@ -28,6 +28,7 @@
| Container Registry | NuGet [1.2.0](https://www.nuget.org/packages/Azure.Containers.ContainerRegistry/1.2.0) | [docs](/dotnet/api/overview/azure/Containers.ContainerRegistry-readme) | GitHub [1.2.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Containers.ContainerRegistry_1.2.0/sdk/containerregistry/Azure.Containers.ContainerRegistry/) |
| Content Safety | NuGet [1.0.0](https://www.nuget.org/packages/Azure.AI.ContentSafety/1.0.0) | [docs](/dotnet/api/overview/azure/AI.ContentSafety-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.ContentSafety_1.0.0/sdk/contentsafety/Azure.AI.ContentSafety/) |
| Conversational Language Understanding | NuGet [1.1.0](https://www.nuget.org/packages/Azure.AI.Language.Conversations/1.1.0)
NuGet [2.0.0-beta.2](https://www.nuget.org/packages/Azure.AI.Language.Conversations/2.0.0-beta.2) | [docs](/dotnet/api/overview/azure/AI.Language.Conversations-readme) | GitHub [1.1.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Language.Conversations_1.1.0/sdk/cognitivelanguage/Azure.AI.Language.Conversations/)
GitHub [2.0.0-beta.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Language.Conversations_2.0.0-beta.2/sdk/cognitivelanguage/Azure.AI.Language.Conversations/) |
+| Conversations Authoring | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.AI.Language.Conversations.Authoring/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/AI.Language.Conversations.Authoring-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Language.Conversations.Authoring_1.0.0-beta.1/sdk/cognitivelanguage/Azure.AI.Language.Conversations.Authoring/) |
| Core - Client - AMQP | NuGet [1.3.1](https://www.nuget.org/packages/Azure.Core.Amqp/1.3.1) | [docs](/dotnet/api/overview/azure/Core.Amqp-readme) | GitHub [1.3.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Core.Amqp_1.3.1/sdk/core/Azure.Core.Amqp/) |
| Core - Client - Core | NuGet [1.45.0](https://www.nuget.org/packages/Azure.Core/1.45.0) | [docs](/dotnet/api/overview/azure/Core-readme) | GitHub [1.45.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Core_1.45.0/sdk/core/Azure.Core/) |
| Core Newtonsoft Json | NuGet [2.0.0](https://www.nuget.org/packages/Microsoft.Azure.Core.NewtonsoftJson/2.0.0) | [docs](/dotnet/api/overview/azure/Microsoft.Azure.Core.NewtonsoftJson-readme) | GitHub [2.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.Core.NewtonsoftJson_2.0.0/sdk/core/Microsoft.Azure.Core.NewtonsoftJson/) |
@@ -53,8 +54,8 @@
| Health Insights Cancer Profiling | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.Health.Insights.CancerProfiling/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/Health.Insights.CancerProfiling-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Health.Insights.CancerProfiling_1.0.0-beta.1/sdk/healthinsights/Azure.Health.Insights.CancerProfiling/) |
| Health Insights Clinical Matching | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.Health.Insights.ClinicalMatching/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/Health.Insights.ClinicalMatching-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Health.Insights.ClinicalMatching_1.0.0-beta.1/sdk/healthinsights/Azure.Health.Insights.ClinicalMatching/) |
| Health Insights Radiology Insights | NuGet [1.0.0](https://www.nuget.org/packages/Azure.Health.Insights.RadiologyInsights/1.0.0) | [docs](/dotnet/api/overview/azure/Health.Insights.RadiologyInsights-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Health.Insights.RadiologyInsights_1.0.0/sdk/healthinsights/Azure.Health.Insights.RadiologyInsights/) |
-| Identity | NuGet [1.13.2](https://www.nuget.org/packages/Azure.Identity/1.13.2)
NuGet [1.14.0-beta.1](https://www.nuget.org/packages/Azure.Identity/1.14.0-beta.1) | [docs](/dotnet/api/overview/azure/Identity-readme) | GitHub [1.13.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Identity_1.13.2/sdk/identity/Azure.Identity/)
GitHub [1.14.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Identity_1.14.0-beta.1/sdk/identity/Azure.Identity/) |
-| Identity Broker | NuGet [1.2.0](https://www.nuget.org/packages/Azure.Identity.Broker/1.2.0) | [docs](/dotnet/api/overview/azure/Identity.Broker-readme) | GitHub [1.2.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Identity.Broker_1.2.0/sdk/identity/Azure.Identity.Broker/) |
+| Identity | NuGet [1.13.2](https://www.nuget.org/packages/Azure.Identity/1.13.2)
NuGet [1.14.0-beta.2](https://www.nuget.org/packages/Azure.Identity/1.14.0-beta.2) | [docs](/dotnet/api/overview/azure/Identity-readme) | GitHub [1.13.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Identity_1.13.2/sdk/identity/Azure.Identity/)
GitHub [1.14.0-beta.2](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Identity_1.14.0-beta.2/sdk/identity/Azure.Identity/) |
+| Identity Broker | NuGet [1.2.0](https://www.nuget.org/packages/Azure.Identity.Broker/1.2.0)
NuGet [1.3.0-beta.1](https://www.nuget.org/packages/Azure.Identity.Broker/1.3.0-beta.1) | [docs](/dotnet/api/overview/azure/Identity.Broker-readme) | GitHub [1.2.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Identity.Broker_1.2.0/sdk/identity/Azure.Identity.Broker/)
GitHub [1.3.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Identity.Broker_1.3.0-beta.1/sdk/identity/Azure.Identity.Broker/) |
| Image Analysis | NuGet [1.0.0](https://www.nuget.org/packages/Azure.AI.Vision.ImageAnalysis/1.0.0) | [docs](/dotnet/api/overview/azure/AI.Vision.ImageAnalysis-readme) | GitHub [1.0.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Vision.ImageAnalysis_1.0.0/sdk/vision/Azure.AI.Vision.ImageAnalysis/) |
| Key Vault - Administration | NuGet [4.5.0](https://www.nuget.org/packages/Azure.Security.KeyVault.Administration/4.5.0) | [docs](/dotnet/api/overview/azure/Security.KeyVault.Administration-readme) | GitHub [4.5.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Security.KeyVault.Administration_4.5.0/sdk/keyvault/Azure.Security.KeyVault.Administration/) |
| Key Vault - Certificates | NuGet [4.7.0](https://www.nuget.org/packages/Azure.Security.KeyVault.Certificates/4.7.0) | [docs](/dotnet/api/overview/azure/Security.KeyVault.Certificates-readme) | GitHub [4.7.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Security.KeyVault.Certificates_4.7.0/sdk/keyvault/Azure.Security.KeyVault.Certificates/) |
@@ -100,12 +101,12 @@
| Schema Registry | NuGet [1.4.0](https://www.nuget.org/packages/Azure.Data.SchemaRegistry/1.4.0) | [docs](/dotnet/api/overview/azure/Data.SchemaRegistry-readme) | GitHub [1.4.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Data.SchemaRegistry_1.4.0/sdk/schemaregistry/Azure.Data.SchemaRegistry/) |
| Schema Registry - Avro | NuGet [1.0.1](https://www.nuget.org/packages/Microsoft.Azure.Data.SchemaRegistry.ApacheAvro/1.0.1) | [docs](/dotnet/api/overview/azure/Microsoft.Azure.Data.SchemaRegistry.ApacheAvro-readme) | GitHub [1.0.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.Data.SchemaRegistry.ApacheAvro_1.0.1/sdk/schemaregistry/Microsoft.Azure.Data.SchemaRegistry.ApacheAvro/) |
| Service Bus | NuGet [7.18.4](https://www.nuget.org/packages/Azure.Messaging.ServiceBus/7.18.4) | [docs](/dotnet/api/overview/azure/Messaging.ServiceBus-readme) | GitHub [7.18.4](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Messaging.ServiceBus_7.18.4/sdk/servicebus/Azure.Messaging.ServiceBus/) |
-| Storage - Blobs | NuGet [12.23.0](https://www.nuget.org/packages/Azure.Storage.Blobs/12.23.0)
NuGet [12.24.0-beta.1](https://www.nuget.org/packages/Azure.Storage.Blobs/12.24.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.Blobs-readme) | GitHub [12.23.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs_12.23.0/sdk/storage/Azure.Storage.Blobs/)
GitHub [12.24.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs_12.24.0-beta.1/sdk/storage/Azure.Storage.Blobs/) |
-| Storage - Blobs Batch | NuGet [12.20.0](https://www.nuget.org/packages/Azure.Storage.Blobs.Batch/12.20.0)
NuGet [12.21.0-beta.1](https://www.nuget.org/packages/Azure.Storage.Blobs.Batch/12.21.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.Blobs.Batch-readme) | GitHub [12.20.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs.Batch_12.20.0/sdk/storage/Azure.Storage.Blobs.Batch/)
GitHub [12.21.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs.Batch_12.21.0-beta.1/sdk/storage/Azure.Storage.Blobs.Batch/) |
-| Storage - Blobs ChangeFeed | NuGet [12.0.0-preview.53](https://www.nuget.org/packages/Azure.Storage.Blobs.ChangeFeed/12.0.0-preview.53) | [docs](/dotnet/api/overview/azure/Storage.Blobs.ChangeFeed-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [12.0.0-preview.53](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs.ChangeFeed_12.0.0-preview.53/sdk/storage/Azure.Storage.Blobs.ChangeFeed/) |
-| Storage - Files Data Lake | NuGet [12.21.0](https://www.nuget.org/packages/Azure.Storage.Files.DataLake/12.21.0)
NuGet [12.22.0-beta.1](https://www.nuget.org/packages/Azure.Storage.Files.DataLake/12.22.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.Files.DataLake-readme) | GitHub [12.21.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Files.DataLake_12.21.0/sdk/storage/Azure.Storage.Files.DataLake/)
GitHub [12.22.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Files.DataLake_12.22.0-beta.1/sdk/storage/Azure.Storage.Files.DataLake/) |
-| Storage - Files Share | NuGet [12.21.0](https://www.nuget.org/packages/Azure.Storage.Files.Shares/12.21.0)
NuGet [12.22.0-beta.1](https://www.nuget.org/packages/Azure.Storage.Files.Shares/12.22.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.Files.Shares-readme) | GitHub [12.21.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Files.Shares_12.21.0/sdk/storage/Azure.Storage.Files.Shares/)
GitHub [12.22.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Files.Shares_12.22.0-beta.1/sdk/storage/Azure.Storage.Files.Shares/) |
-| Storage - Queues | NuGet [12.21.0](https://www.nuget.org/packages/Azure.Storage.Queues/12.21.0)
NuGet [12.22.0-beta.1](https://www.nuget.org/packages/Azure.Storage.Queues/12.22.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.Queues-readme) | GitHub [12.21.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Queues_12.21.0/sdk/storage/Azure.Storage.Queues/)
GitHub [12.22.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Queues_12.22.0-beta.1/sdk/storage/Azure.Storage.Queues/) |
+| Storage - Blobs | NuGet [12.24.0](https://www.nuget.org/packages/Azure.Storage.Blobs/12.24.0) | [docs](/dotnet/api/overview/azure/Storage.Blobs-readme) | GitHub [12.24.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs_12.24.0/sdk/storage/Azure.Storage.Blobs/) |
+| Storage - Blobs Batch | NuGet [12.21.0](https://www.nuget.org/packages/Azure.Storage.Blobs.Batch/12.21.0) | [docs](/dotnet/api/overview/azure/Storage.Blobs.Batch-readme) | GitHub [12.21.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs.Batch_12.21.0/sdk/storage/Azure.Storage.Blobs.Batch/) |
+| Storage - Blobs ChangeFeed | NuGet [12.0.0-preview.54](https://www.nuget.org/packages/Azure.Storage.Blobs.ChangeFeed/12.0.0-preview.54) | [docs](/dotnet/api/overview/azure/Storage.Blobs.ChangeFeed-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [12.0.0-preview.54](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Blobs.ChangeFeed_12.0.0-preview.54/sdk/storage/Azure.Storage.Blobs.ChangeFeed/) |
+| Storage - Files Data Lake | NuGet [12.22.0](https://www.nuget.org/packages/Azure.Storage.Files.DataLake/12.22.0) | [docs](/dotnet/api/overview/azure/Storage.Files.DataLake-readme) | GitHub [12.22.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Files.DataLake_12.22.0/sdk/storage/Azure.Storage.Files.DataLake/) |
+| Storage - Files Share | NuGet [12.22.0](https://www.nuget.org/packages/Azure.Storage.Files.Shares/12.22.0) | [docs](/dotnet/api/overview/azure/Storage.Files.Shares-readme) | GitHub [12.22.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Files.Shares_12.22.0/sdk/storage/Azure.Storage.Files.Shares/) |
+| Storage - Queues | NuGet [12.22.0](https://www.nuget.org/packages/Azure.Storage.Queues/12.22.0) | [docs](/dotnet/api/overview/azure/Storage.Queues-readme) | GitHub [12.22.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Queues_12.22.0/sdk/storage/Azure.Storage.Queues/) |
| Synapse - AccessControl | NuGet [1.0.0-preview.5](https://www.nuget.org/packages/Azure.Analytics.Synapse.AccessControl/1.0.0-preview.5) | [docs](/dotnet/api/overview/azure/Analytics.Synapse.AccessControl-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-preview.5](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Analytics.Synapse.AccessControl_1.0.0-preview.5/sdk/synapse/Azure.Analytics.Synapse.AccessControl/) |
| Synapse - Artifacts | NuGet [1.0.0-preview.21](https://www.nuget.org/packages/Azure.Analytics.Synapse.Artifacts/1.0.0-preview.21) | [docs](/dotnet/api/overview/azure/Analytics.Synapse.Artifacts-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-preview.21](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Analytics.Synapse.Artifacts_1.0.0-preview.21/sdk/synapse/Azure.Analytics.Synapse.Artifacts/) |
| Synapse - Managed Private Endpoints | NuGet [1.0.0-beta.5](https://www.nuget.org/packages/Azure.Analytics.Synapse.ManagedPrivateEndpoints/1.0.0-beta.5) | [docs](/dotnet/api/overview/azure/Analytics.Synapse.ManagedPrivateEndpoints-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.5](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Analytics.Synapse.ManagedPrivateEndpoints_1.0.0-beta.5/sdk/synapse/Azure.Analytics.Synapse.ManagedPrivateEndpoints/) |
@@ -115,11 +116,10 @@
| System.ClientModel | NuGet [1.3.0](https://www.nuget.org/packages/System.ClientModel/1.3.0)
NuGet [1.4.0-beta.1](https://www.nuget.org/packages/System.ClientModel/1.4.0-beta.1) | [docs](/dotnet/api/overview/azure/System.ClientModel-readme) | GitHub [1.3.0](https://github.com/Azure/azure-sdk-for-net/tree/System.ClientModel_1.3.0/sdk/core/System.ClientModel/)
GitHub [1.4.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/System.ClientModel_1.4.0-beta.1/sdk/core/System.ClientModel/) |
| Tables | NuGet [12.10.0](https://www.nuget.org/packages/Azure.Data.Tables/12.10.0) | [docs](/dotnet/api/overview/azure/Data.Tables-readme) | GitHub [12.10.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Data.Tables_12.10.0/sdk/tables/Azure.Data.Tables/) |
| Text Analytics | NuGet [5.3.0](https://www.nuget.org/packages/Azure.AI.TextAnalytics/5.3.0) | [docs](/dotnet/api/overview/azure/AI.TextAnalytics-readme) | GitHub [5.3.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.TextAnalytics_5.3.0/sdk/textanalytics/Azure.AI.TextAnalytics/) |
+| Text Authoring | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.AI.Language.Text.Authoring/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/AI.Language.Text.Authoring-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Language.Text.Authoring_1.0.0-beta.1/sdk/cognitivelanguage/Azure.AI.Language.Text.Authoring/) |
| Text Translation | NuGet [1.0.0](https://www.nuget.org/packages/Azure.AI.Translation.Text/1.0.0) | [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/) |
| 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&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&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.Language.Conversations.Authoring/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/AI.Language.Conversations.Authoring-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Language.Conversations.Authoring_1.0.0-beta.1/sdk/cognitivelanguage/Azure.AI.Language.Conversations.Authoring/) |
-| unknown | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Azure.AI.Language.Text.Authoring/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/AI.Language.Text.Authoring-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.AI.Language.Text.Authoring_1.0.0-beta.1/sdk/cognitivelanguage/Azure.AI.Language.Text.Authoring/) |
| 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&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/) |
| Vision Common | NuGet [0.15.1-beta.1](https://www.nuget.org/packages/Azure.AI.Vision.Common/0.15.1-beta.1) | | GitHub [0.15.1-beta.1](https://msasg.visualstudio.com/Skyman/_git/Carbon) |
| WCF Storage Queues | NuGet [1.0.0-beta.1](https://www.nuget.org/packages/Microsoft.WCF.Azure.StorageQueues/1.0.0-beta.1) | [docs](/dotnet/api/overview/azure/Microsoft.WCF.Azure.StorageQueues-readme?view=azure-dotnet-preview&preserve-view=true) | GitHub [1.0.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.WCF.Azure.StorageQueues_1.0.0-beta.1/sdk/extension-wcf/Microsoft.WCF.Azure.StorageQueues/) |
@@ -133,7 +133,7 @@
| Functions extension for Azure Tables | NuGet [1.3.2](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.Tables/1.3.2) | [docs](/dotnet/api/overview/azure/Microsoft.Azure.WebJobs.Extensions.Tables-readme) | GitHub [1.3.2](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.WebJobs.Extensions.Tables_1.3.2/sdk/tables/Microsoft.Azure.WebJobs.Extensions.Tables/) |
| Key Encryptor for .NET Data Protection | NuGet [1.4.0](https://www.nuget.org/packages/Azure.Extensions.AspNetCore.DataProtection.Keys/1.4.0) | [docs](/dotnet/api/overview/azure/Extensions.AspNetCore.DataProtection.Keys-readme) | GitHub [1.4.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Extensions.AspNetCore.DataProtection.Keys_1.4.0/sdk/extensions/Azure.Extensions.AspNetCore.DataProtection.Keys/) |
| Secrets Configuration Provider for .NET | NuGet [1.4.0](https://www.nuget.org/packages/Azure.Extensions.AspNetCore.Configuration.Secrets/1.4.0) | [docs](/dotnet/api/overview/azure/Extensions.AspNetCore.Configuration.Secrets-readme) | GitHub [1.4.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Extensions.AspNetCore.Configuration.Secrets_1.4.0/sdk/extensions/Azure.Extensions.AspNetCore.Configuration.Secrets/) |
-| Storage - Common | NuGet [12.22.0](https://www.nuget.org/packages/Azure.Storage.Common/12.22.0)
NuGet [12.23.0-beta.1](https://www.nuget.org/packages/Azure.Storage.Common/12.23.0-beta.1) | [docs](/dotnet/api/overview/azure/Storage.Common-readme) | GitHub [12.22.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Common_12.22.0/sdk/storage/Azure.Storage.Common/)
GitHub [12.23.0-beta.1](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Common_12.23.0-beta.1/sdk/storage/Azure.Storage.Common/) |
+| Storage - Common | NuGet [12.23.0](https://www.nuget.org/packages/Azure.Storage.Common/12.23.0) | [docs](/dotnet/api/overview/azure/Storage.Common-readme) | GitHub [12.23.0](https://github.com/Azure/azure-sdk-for-net/tree/Azure.Storage.Common_12.23.0/sdk/storage/Azure.Storage.Common/) |
| WebJobs Extensions - Event Grid | NuGet [3.4.3](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.EventGrid/3.4.3) | [docs](/dotnet/api/overview/azure/Microsoft.Azure.WebJobs.Extensions.EventGrid-readme) | GitHub [3.4.3](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.WebJobs.Extensions.EventGrid_3.4.3/sdk/eventgrid/Microsoft.Azure.WebJobs.Extensions.EventGrid/) |
| WebJobs Extensions - Event Hubs | NuGet [6.3.5](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.EventHubs/6.3.5) | [docs](/dotnet/api/overview/azure/Microsoft.Azure.WebJobs.Extensions.EventHubs-readme) | GitHub [6.3.5](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.WebJobs.Extensions.EventHubs_6.3.5/sdk/eventhub/Microsoft.Azure.WebJobs.Extensions.EventHubs/) |
| WebJobs Extensions - Service Bus | NuGet [5.16.4](https://www.nuget.org/packages/Microsoft.Azure.WebJobs.Extensions.ServiceBus/5.16.4) | [docs](/dotnet/api/overview/azure/Microsoft.Azure.WebJobs.Extensions.ServiceBus-readme) | GitHub [5.16.4](https://github.com/Azure/azure-sdk-for-net/tree/Microsoft.Azure.WebJobs.Extensions.ServiceBus_5.16.4/sdk/servicebus/Microsoft.Azure.WebJobs.Extensions.ServiceBus/) |
diff --git a/docs/azure/sdk/snippets/aspnetcore-guidance/BlazorSample/BlazorSample.csproj b/docs/azure/sdk/snippets/aspnetcore-guidance/BlazorSample/BlazorSample.csproj
index 63759833fed65..2621b90875ee8 100644
--- a/docs/azure/sdk/snippets/aspnetcore-guidance/BlazorSample/BlazorSample.csproj
+++ b/docs/azure/sdk/snippets/aspnetcore-guidance/BlazorSample/BlazorSample.csproj
@@ -9,7 +9,7 @@
-
+
diff --git a/docs/azure/sdk/snippets/aspnetcore-guidance/MinApiSample/MinApiSample.csproj b/docs/azure/sdk/snippets/aspnetcore-guidance/MinApiSample/MinApiSample.csproj
index c76c39bd32b3f..70660601cf5a4 100644
--- a/docs/azure/sdk/snippets/aspnetcore-guidance/MinApiSample/MinApiSample.csproj
+++ b/docs/azure/sdk/snippets/aspnetcore-guidance/MinApiSample/MinApiSample.csproj
@@ -7,10 +7,10 @@
-
+
-
+
diff --git a/docs/azure/sdk/snippets/authentication/Directory.Packages.props b/docs/azure/sdk/snippets/authentication/Directory.Packages.props
index 4b82dd136e424..e42548814b70b 100644
--- a/docs/azure/sdk/snippets/authentication/Directory.Packages.props
+++ b/docs/azure/sdk/snippets/authentication/Directory.Packages.props
@@ -11,7 +11,7 @@
-
+
diff --git a/docs/azure/sdk/snippets/pagination/pagination.csproj b/docs/azure/sdk/snippets/pagination/pagination.csproj
index 69de4b9572175..bd8df00a151a7 100644
--- a/docs/azure/sdk/snippets/pagination/pagination.csproj
+++ b/docs/azure/sdk/snippets/pagination/pagination.csproj
@@ -11,7 +11,7 @@
-
+
diff --git a/docs/core/compatibility/10.0.md b/docs/core/compatibility/10.0.md
index 5da792b1b23cd..6ed38abe7cfa5 100644
--- a/docs/core/compatibility/10.0.md
+++ b/docs/core/compatibility/10.0.md
@@ -48,15 +48,17 @@ If you're migrating an app to .NET 10, the breaking changes listed here might af
## SDK
-| Title | Type of change | Introduced version |
-|-----------------------------------------------------------------------------------------------|-------------------|--------------------|
-| [MSBUILDCUSTOMBUILDEVENTWARNING escape hatch removed](sdk/10.0/custom-build-event-warning.md) | Behavioral change | Preview 1 |
+| Title | Type of change | Introduced version |
+|----------------------------------------------------------------------------------------------------------------------|-------------------|--------------------|
+| [Default workload configuration from 'loose manifests' to 'workload sets' mode](sdk/10.0/default-workload-config.md) | Behavioral change | Preview 2 |
+| [MSBUILDCUSTOMBUILDEVENTWARNING escape hatch removed](sdk/10.0/custom-build-event-warning.md) | Behavioral change | Preview 1 |
## Windows Forms
-| Title | Type of change | Introduced version |
-|-------------------------------------------------------------------------------------------------------------------|---------------------|--------------------|
-| [API obsoletions](windows-forms/10.0/obsolete-apis.md) | Source incompatible | Preview 1 |
-| [Renamed parameter in HtmlElement.InsertAdjacentElement](windows-forms/10.0/insertadjacentelement-orientation.md) | Source incompatible | Preview 1 |
-| [TreeView checkbox image truncation](windows-forms/10.0/treeview-text-location.md) | Behavioral change | Preview 1 |
-| [StatusStrip uses System RenderMode by default](windows-forms/10.0/statusstrip-renderer.md) | Behavioral change | Preview 1 |
+| Title | Type of change | Introduced version |
+|-----------------------------------------------------------------------------------------------------------------------------------------------|---------------------|--------------------|
+| [API obsoletions](windows-forms/10.0/obsolete-apis.md) | Source incompatible | Preview 1 |
+| [Applications referencing both WPF and WinForms must disambiguate MenuItem and ContextMenu types](windows-forms/10.0/menuitem-contextmenu.md) | Source incompatible | Preview 1 |
+| [Renamed parameter in HtmlElement.InsertAdjacentElement](windows-forms/10.0/insertadjacentelement-orientation.md) | Source incompatible | Preview 1 |
+| [TreeView checkbox image truncation](windows-forms/10.0/treeview-text-location.md) | Behavioral change | Preview 1 |
+| [StatusStrip uses System RenderMode by default](windows-forms/10.0/statusstrip-renderer.md) | Behavioral change | Preview 1 |
diff --git a/docs/core/compatibility/9.0.md b/docs/core/compatibility/9.0.md
index c4492a51c035b..ebf0531de0c51 100644
--- a/docs/core/compatibility/9.0.md
+++ b/docs/core/compatibility/9.0.md
@@ -61,6 +61,7 @@ If you're migrating an app to .NET 9, the breaking changes listed here might aff
| Title | Type of change | Introduced version |
|--------------------------------------------------------------------------------------------------------------|---------------------|--------------------|
+| [APIs Removed from System.Security.Cryptography.Pkcs netstandard2.0](cryptography/9.0/api-removed-pkcs.md) | Source incompatible | GA |
| [SafeEvpPKeyHandle.DuplicateHandle up-refs the handle](cryptography/9.0/evp-pkey-handle.md) | Behavioral change | Preview 7 |
| [Some X509Certificate2 and X509Certificate constructors are obsolete](cryptography/9.0/x509-certificates.md) | Source incompatible | Preview 7 |
| [Windows private key lifetime simplified](cryptography/9.0/private-key-lifetime.md) | Behavioral change | Preview 7 |
diff --git a/docs/core/compatibility/cryptography/9.0/api-removed-pkcs.md b/docs/core/compatibility/cryptography/9.0/api-removed-pkcs.md
new file mode 100644
index 0000000000000..e9d3fb8ce293a
--- /dev/null
+++ b/docs/core/compatibility/cryptography/9.0/api-removed-pkcs.md
@@ -0,0 +1,52 @@
+---
+title: "Breaking change - APIs Removed from System.Security.Cryptography.Pkcs netstandard2.0"
+description: "Learn about the breaking change in .NET 9 where certain APIs were removed from System.Security.Cryptography.Pkcs netstandard2.0."
+ms.date: 3/11/2025
+ai-usage: ai-assisted
+ms.custom: https://github.com/dotnet/docs/issues/45186
+---
+
+# APIs Removed from System.Security.Cryptography.Pkcs netstandard2.0
+
+The `netstandard2.0` build of the `System.Security.Cryptography.Pkcs` NuGet package versions 9.0.0 through 9.0.2 included APIs that are not present in .NET Framework. Calling these APIs from a .NET Standard library that runs on .NET Framework will throw . These members were mistakenly included and have been removed in version 9.0.3 of the package.
+
+## Version introduced
+
+.NET 9
+
+## Previous behavior
+
+When referencing `System.Security.Cryptography.Pkcs` version 9.0.0 in a project targeting `netstandard2.0`, the compilation would succeed when referencing the property. However, if the library ran on .NET Framework, accessing the property would trigger a .
+
+## New behavior
+
+Accessing any of the removed members now results in a compilation failure, rather than a runtime failure.
+
+## Type of breaking change
+
+This is a [source incompatible](../../categories.md#source-compatibility) change.
+
+## Reason for change
+
+The members were accidentally included due to a change in how the NuGet package was produced. As these members cannot work on .NET Framework, they should never have been listed as available to .NET Standard 2.0.
+
+## Recommended action
+
+If these additional members are needed, compile specifically for a TFM that includes them, such as `net8.0`.
+
+## Affected APIs
+
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
diff --git a/docs/core/compatibility/sdk/10.0/default-workload-config.md b/docs/core/compatibility/sdk/10.0/default-workload-config.md
new file mode 100644
index 0000000000000..c4f80231d736b
--- /dev/null
+++ b/docs/core/compatibility/sdk/10.0/default-workload-config.md
@@ -0,0 +1,48 @@
+---
+title: "Breaking change - Change default workload configuration from 'loose manifests' to 'workload sets' mode"
+description: "Learn about the breaking change in .NET 10 Preview 2 where the default workload update mode changed."
+ms.date: 3/12/2025
+ai-usage: ai-assisted
+ms.custom: https://github.com/dotnet/docs/issues/45000
+---
+
+# Change default workload configuration from 'loose manifests' to 'workload sets' mode
+
+In .NET 10 Preview 2, the default workload update mode changed from "manifests" to "workload-set". This change ensures users use a single, coherent set of workload versions that do not individually float, making it easier to maintain consistency and manage workloads.
+
+## Version introduced
+
+.NET 10 Preview 2
+
+## Previous behavior
+
+Previously, workloads operated in 'loose manifest' mode by default. Errant `dotnet workload update` commands could install new versions that might not work well together, making it difficult for users to keep a consistent set of workload versions aligned.
+
+## New behavior
+
+Workloads will never float unless you:
+
+* Update your SDK.
+* Perform an explicit update command.
+
+When you perform an update, all workloads will use known-matching versions from the workload set that is used.
+
+## Type of breaking change
+
+This is a [behavioral change](../../categories.md#behavioral-change).
+
+## Reason for change
+
+Users requested more control and predictability in workload management. This new system allows for pinning and coherent updates, ensuring a consistent set of workload versions.
+
+## Recommended action
+
+No corrective action is necessary. If you experience issues, you can revert to loose manifest mode by running the following command:
+
+```dotnetcli
+dotnet workload config --update-mode manifests
+```
+
+## Affected APIs
+
+None.
diff --git a/docs/core/compatibility/toc.yml b/docs/core/compatibility/toc.yml
index 286002fca5b30..11e4aa6ca3f16 100644
--- a/docs/core/compatibility/toc.yml
+++ b/docs/core/compatibility/toc.yml
@@ -40,12 +40,16 @@ items:
href: globalization/10.0/version-override.md
- name: SDK and MSBuild
items:
+ - name: Default workload configuration from 'loose manifests' to 'workload sets' mode
+ href: sdk/10.0/default-workload-config.md
- name: MSBUILDCUSTOMBUILDEVENTWARNING escape hatch removed
href: sdk/10.0/custom-build-event-warning.md
- name: Windows Forms
items:
- name: API obsoletions
href: windows-forms/10.0/obsolete-apis.md
+ - name: Applications referencing both WPF and WinForms must disambiguate MenuItem and ContextMenu types
+ href: windows-forms/10.0/menuitem-contextmenu.md
- name: Renamed parameter in HtmlElement.InsertAdjacentElement
href: windows-forms/10.0/insertadjacentelement-orientation.md
- name: TreeView checkbox image truncation
@@ -116,6 +120,8 @@ items:
href: core-libraries/9.0/ziparchiveentry-encoding.md
- name: Cryptography
items:
+ - name: APIs Removed from System.Security.Cryptography.Pkcs netstandard2.0
+ href: cryptography/9.0/api-removed-pkcs.md
- name: SafeEvpPKeyHandle.DuplicateHandle up-refs the handle
href: cryptography/9.0/evp-pkey-handle.md
- name: Some X509Certificate2 and X509Certificate constructors are obsolete
@@ -1616,6 +1622,8 @@ items:
href: cryptography/10.0/version-override.md
- name: .NET 9
items:
+ - name: APIs Removed from System.Security.Cryptography.Pkcs netstandard2.0
+ href: cryptography/9.0/api-removed-pkcs.md
- name: SafeEvpPKeyHandle.DuplicateHandle up-refs the handle
href: cryptography/9.0/evp-pkey-handle.md
- name: Some X509Certificate2 and X509Certificate constructors are obsolete
@@ -1892,6 +1900,8 @@ items:
items:
- name: .NET 10
items:
+ - name: Default workload configuration from 'loose manifests' to 'workload sets' mode
+ href: sdk/10.0/default-workload-config.md
- name: MSBUILDCUSTOMBUILDEVENTWARNING escape hatch removed
href: sdk/10.0/custom-build-event-warning.md
- name: .NET 9
@@ -2128,6 +2138,8 @@ items:
items:
- name: API obsoletions
href: windows-forms/10.0/obsolete-apis.md
+ - name: Applications referencing both WPF and WinForms must disambiguate MenuItem and ContextMenu types
+ href: windows-forms/10.0/menuitem-contextmenu.md
- name: Renamed parameter in HtmlElement.InsertAdjacentElement
href: windows-forms/10.0/insertadjacentelement-orientation.md
- name: TreeView checkbox image truncation
diff --git a/docs/core/compatibility/windows-forms/10.0/menuitem-contextmenu.md b/docs/core/compatibility/windows-forms/10.0/menuitem-contextmenu.md
new file mode 100644
index 0000000000000..64d11c43e7350
--- /dev/null
+++ b/docs/core/compatibility/windows-forms/10.0/menuitem-contextmenu.md
@@ -0,0 +1,68 @@
+---
+title: "Breaking change - Applications referencing both WPF and WinForms must disambiguate MenuItem and ContextMenu types"
+description: "Learn about the breaking change in .NET 10 Preview 1 where applications referencing both WPF and WinForms must disambiguate MenuItem and ContextMenu types."
+ms.date: 3/11/2025
+ai-usage: ai-assisted
+ms.custom: https://github.com/dotnet/docs/issues/44738
+---
+
+# Applications referencing both WPF and WinForms must disambiguate MenuItem and ContextMenu types
+
+This document describes a breaking change introduced in .NET 10 Preview 1. Applications that reference both Windows Presentation Foundation (WPF) and Windows Forms (WinForms) must disambiguate certain types, such as `MenuItem` and `ContextMenu`, to avoid compile-time errors.
+
+## Version introduced
+
+.NET 10 Preview 1
+
+## Previous behavior
+
+Previously, the types `ContextMenu`, `DataGrid`, `DataGridCell`, `Menu`, `MenuItem`, `ToolBar`, and `StatusBar` would resolve to the namespace because they did not exist in the namespace in .NET Core 3.1 through .NET 9.0.
+
+```xml
+enable
+true
+true
+```
+
+## New behavior
+
+The affected types in the namespace cause a compile-time error when there is an ambiguous reference between and .
+
+```output
+CS0104 'ContextMenu' is an ambiguous reference between 'System.Windows.Controls.ContextMenu' and 'System.Windows.Forms.ContextMenu'
+```
+
+## Type of breaking change
+
+This is a [source incompatible](../../categories.md#source-compatibility) change.
+
+## Reason for change
+
+The change facilitates migration from .NET Framework when third-party libraries cannot be updated. A .NET 10 application can continue to reference .NET Framework dependencies and handle errors at runtime.
+
+## Recommended action
+
+Use aliases to resolve conflicting namespaces. For example:
+
+```csharp
+using ContextMenu = System.Windows.Controls.ContextMenu;
+```
+
+Refer to the [alias name conflicts documentation](/dotnet/csharp/language-reference/compiler-messages/using-directive-errors#alias-name-conflicts) for more details.
+
+## Affected APIs
+
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+- `System.Windows.Controls.StatusBar`
diff --git a/docs/core/containers/snippets/Worker/DotNet.ContainerImage.csproj b/docs/core/containers/snippets/Worker/DotNet.ContainerImage.csproj
index 1a6b7d601e14c..a2a3dacd87fda 100644
--- a/docs/core/containers/snippets/Worker/DotNet.ContainerImage.csproj
+++ b/docs/core/containers/snippets/Worker/DotNet.ContainerImage.csproj
@@ -9,6 +9,6 @@
-
+
diff --git a/docs/core/diagnostics/snippets/Metrics/metric-instr.csproj b/docs/core/diagnostics/snippets/Metrics/metric-instr.csproj
index 018b1913ee045..a384757643ce4 100644
--- a/docs/core/diagnostics/snippets/Metrics/metric-instr.csproj
+++ b/docs/core/diagnostics/snippets/Metrics/metric-instr.csproj
@@ -9,7 +9,7 @@
-
+
diff --git a/docs/core/diagnostics/snippets/OTLP-Example/csharp/OTLP-Example.csproj b/docs/core/diagnostics/snippets/OTLP-Example/csharp/OTLP-Example.csproj
index ff02c46bdad78..ecefdb35319b8 100644
--- a/docs/core/diagnostics/snippets/OTLP-Example/csharp/OTLP-Example.csproj
+++ b/docs/core/diagnostics/snippets/OTLP-Example/csharp/OTLP-Example.csproj
@@ -11,8 +11,8 @@
-
-
+
+
diff --git a/docs/core/diagnostics/snippets/OTel-Prometheus-Grafana-Jaeger/csharp/OTel-Prometheus-Grafana-Jaeger.csproj b/docs/core/diagnostics/snippets/OTel-Prometheus-Grafana-Jaeger/csharp/OTel-Prometheus-Grafana-Jaeger.csproj
index 5386e9c559e1e..888c3be59521b 100644
--- a/docs/core/diagnostics/snippets/OTel-Prometheus-Grafana-Jaeger/csharp/OTel-Prometheus-Grafana-Jaeger.csproj
+++ b/docs/core/diagnostics/snippets/OTel-Prometheus-Grafana-Jaeger/csharp/OTel-Prometheus-Grafana-Jaeger.csproj
@@ -18,7 +18,7 @@
-
+
diff --git a/docs/core/diagnostics/snippets/exception-summary/exception-summary.csproj b/docs/core/diagnostics/snippets/exception-summary/exception-summary.csproj
index 50a1d05e1befa..3a2beeca83e47 100644
--- a/docs/core/diagnostics/snippets/exception-summary/exception-summary.csproj
+++ b/docs/core/diagnostics/snippets/exception-summary/exception-summary.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/docs/core/diagnostics/snippets/health-checks/health-checks.csproj b/docs/core/diagnostics/snippets/health-checks/health-checks.csproj
index ae63d4b712339..c6af7db76ead7 100644
--- a/docs/core/diagnostics/snippets/health-checks/health-checks.csproj
+++ b/docs/core/diagnostics/snippets/health-checks/health-checks.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/docs/core/diagnostics/snippets/lifetime-health-checks/lifetime-health-checks.csproj b/docs/core/diagnostics/snippets/lifetime-health-checks/lifetime-health-checks.csproj
index f25283dab71e9..de641554b870a 100644
--- a/docs/core/diagnostics/snippets/lifetime-health-checks/lifetime-health-checks.csproj
+++ b/docs/core/diagnostics/snippets/lifetime-health-checks/lifetime-health-checks.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/docs/core/diagnostics/snippets/resource-monitoring/resource-monitoring.csproj b/docs/core/diagnostics/snippets/resource-monitoring/resource-monitoring.csproj
index 6631eecdbbc21..61f23f45f3ae6 100644
--- a/docs/core/diagnostics/snippets/resource-monitoring/resource-monitoring.csproj
+++ b/docs/core/diagnostics/snippets/resource-monitoring/resource-monitoring.csproj
@@ -8,9 +8,9 @@
-
-
-
+
+
+
diff --git a/docs/core/extensions/snippets/caching/distributed/distributed-apis.csproj b/docs/core/extensions/snippets/caching/distributed/distributed-apis.csproj
index bc5e18e0356ce..1a368732bd2af 100644
--- a/docs/core/extensions/snippets/caching/distributed/distributed-apis.csproj
+++ b/docs/core/extensions/snippets/caching/distributed/distributed-apis.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/caching/memory-apis/memory-apis.csproj b/docs/core/extensions/snippets/caching/memory-apis/memory-apis.csproj
index 1c09bf9c7e524..c42bf43238dcf 100644
--- a/docs/core/extensions/snippets/caching/memory-apis/memory-apis.csproj
+++ b/docs/core/extensions/snippets/caching/memory-apis/memory-apis.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/caching/memory-worker/memory-worker.csproj b/docs/core/extensions/snippets/caching/memory-worker/memory-worker.csproj
index 94609f9856b7c..028d4b249f9a4 100644
--- a/docs/core/extensions/snippets/caching/memory-worker/memory-worker.csproj
+++ b/docs/core/extensions/snippets/caching/memory-worker/memory-worker.csproj
@@ -8,9 +8,9 @@
-
-
-
+
+
+
diff --git a/docs/core/extensions/snippets/configuration/app-lifetime/app-lifetime.csproj b/docs/core/extensions/snippets/configuration/app-lifetime/app-lifetime.csproj
index 46cf785869444..cd0f2cd356b66 100644
--- a/docs/core/extensions/snippets/configuration/app-lifetime/app-lifetime.csproj
+++ b/docs/core/extensions/snippets/configuration/app-lifetime/app-lifetime.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/console-basic-builder/console-basic-builder.csproj b/docs/core/extensions/snippets/configuration/console-basic-builder/console-basic-builder.csproj
index 24f94777716a7..684e044363d38 100644
--- a/docs/core/extensions/snippets/configuration/console-basic-builder/console-basic-builder.csproj
+++ b/docs/core/extensions/snippets/configuration/console-basic-builder/console-basic-builder.csproj
@@ -9,7 +9,7 @@
-
+
diff --git a/docs/core/extensions/snippets/configuration/console-basic/console-basic.csproj b/docs/core/extensions/snippets/configuration/console-basic/console-basic.csproj
index f6387d626e235..a6c2386cfda4e 100644
--- a/docs/core/extensions/snippets/configuration/console-basic/console-basic.csproj
+++ b/docs/core/extensions/snippets/configuration/console-basic/console-basic.csproj
@@ -14,8 +14,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/console-binder-gen/console-binder-gen.csproj b/docs/core/extensions/snippets/configuration/console-binder-gen/console-binder-gen.csproj
index e7aae1ae7112f..b515d71052660 100644
--- a/docs/core/extensions/snippets/configuration/console-binder-gen/console-binder-gen.csproj
+++ b/docs/core/extensions/snippets/configuration/console-binder-gen/console-binder-gen.csproj
@@ -12,8 +12,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/console-custom-logging/console-custom-logging.csproj b/docs/core/extensions/snippets/configuration/console-custom-logging/console-custom-logging.csproj
index 93e60152980c3..a19b0230276ac 100644
--- a/docs/core/extensions/snippets/configuration/console-custom-logging/console-custom-logging.csproj
+++ b/docs/core/extensions/snippets/configuration/console-custom-logging/console-custom-logging.csproj
@@ -19,9 +19,9 @@
-
-
-
+
+
+
diff --git a/docs/core/extensions/snippets/configuration/console-di-disposable/console-di-disposable.csproj b/docs/core/extensions/snippets/configuration/console-di-disposable/console-di-disposable.csproj
index dfa099c0bf5c2..cc901fc8aad74 100644
--- a/docs/core/extensions/snippets/configuration/console-di-disposable/console-di-disposable.csproj
+++ b/docs/core/extensions/snippets/configuration/console-di-disposable/console-di-disposable.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/console-di-ienumerable/console-di-ienumerable.csproj b/docs/core/extensions/snippets/configuration/console-di-ienumerable/console-di-ienumerable.csproj
index 9c60ee831651d..916c188f448f6 100644
--- a/docs/core/extensions/snippets/configuration/console-di-ienumerable/console-di-ienumerable.csproj
+++ b/docs/core/extensions/snippets/configuration/console-di-ienumerable/console-di-ienumerable.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/console-di/console-di.csproj b/docs/core/extensions/snippets/configuration/console-di/console-di.csproj
index ce107b1a3cc09..901b620e99de6 100644
--- a/docs/core/extensions/snippets/configuration/console-di/console-di.csproj
+++ b/docs/core/extensions/snippets/configuration/console-di/console-di.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/console-env/console-env.csproj b/docs/core/extensions/snippets/configuration/console-env/console-env.csproj
index 8c8b770ec9c85..e5f3f400732bd 100644
--- a/docs/core/extensions/snippets/configuration/console-env/console-env.csproj
+++ b/docs/core/extensions/snippets/configuration/console-env/console-env.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/console-host/console-host.csproj b/docs/core/extensions/snippets/configuration/console-host/console-host.csproj
index 413b2e479ee46..d7eb16611a91c 100644
--- a/docs/core/extensions/snippets/configuration/console-host/console-host.csproj
+++ b/docs/core/extensions/snippets/configuration/console-host/console-host.csproj
@@ -19,9 +19,9 @@
-
-
-
+
+
+
diff --git a/docs/core/extensions/snippets/configuration/console-indexer/console-indexer.csproj b/docs/core/extensions/snippets/configuration/console-indexer/console-indexer.csproj
index f6387d626e235..a6c2386cfda4e 100644
--- a/docs/core/extensions/snippets/configuration/console-indexer/console-indexer.csproj
+++ b/docs/core/extensions/snippets/configuration/console-indexer/console-indexer.csproj
@@ -14,8 +14,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/console-ini/console-ini.csproj b/docs/core/extensions/snippets/configuration/console-ini/console-ini.csproj
index 3a0a4a180fc8e..1f980b5402946 100644
--- a/docs/core/extensions/snippets/configuration/console-ini/console-ini.csproj
+++ b/docs/core/extensions/snippets/configuration/console-ini/console-ini.csproj
@@ -19,9 +19,9 @@
-
-
-
+
+
+
diff --git a/docs/core/extensions/snippets/configuration/console-json/console-json.csproj b/docs/core/extensions/snippets/configuration/console-json/console-json.csproj
index 4510a86e57b5c..3a1e487118204 100644
--- a/docs/core/extensions/snippets/configuration/console-json/console-json.csproj
+++ b/docs/core/extensions/snippets/configuration/console-json/console-json.csproj
@@ -19,9 +19,9 @@
-
-
-
+
+
+
diff --git a/docs/core/extensions/snippets/configuration/console-memory/console-memory.csproj b/docs/core/extensions/snippets/configuration/console-memory/console-memory.csproj
index 383f69c39f523..76e4a60361402 100644
--- a/docs/core/extensions/snippets/configuration/console-memory/console-memory.csproj
+++ b/docs/core/extensions/snippets/configuration/console-memory/console-memory.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/console-raw/console-raw.csproj b/docs/core/extensions/snippets/configuration/console-raw/console-raw.csproj
index 050d1ddf517f4..1e891ea7e6d7e 100644
--- a/docs/core/extensions/snippets/configuration/console-raw/console-raw.csproj
+++ b/docs/core/extensions/snippets/configuration/console-raw/console-raw.csproj
@@ -14,9 +14,9 @@
-
-
-
+
+
+
diff --git a/docs/core/extensions/snippets/configuration/console-validation-gen/console-validation-gen.csproj b/docs/core/extensions/snippets/configuration/console-validation-gen/console-validation-gen.csproj
index 1439a2c89f843..a1279aaa003ac 100644
--- a/docs/core/extensions/snippets/configuration/console-validation-gen/console-validation-gen.csproj
+++ b/docs/core/extensions/snippets/configuration/console-validation-gen/console-validation-gen.csproj
@@ -19,10 +19,10 @@
-
-
-
-
+
+
+
+
diff --git a/docs/core/extensions/snippets/configuration/console-xml/console-xml.csproj b/docs/core/extensions/snippets/configuration/console-xml/console-xml.csproj
index 14feb2efb4cd1..9f732567908b8 100644
--- a/docs/core/extensions/snippets/configuration/console-xml/console-xml.csproj
+++ b/docs/core/extensions/snippets/configuration/console-xml/console-xml.csproj
@@ -23,9 +23,9 @@
-
-
-
+
+
+
diff --git a/docs/core/extensions/snippets/configuration/console/console.csproj b/docs/core/extensions/snippets/configuration/console/console.csproj
index 24d105aee14e7..013587f944bcc 100644
--- a/docs/core/extensions/snippets/configuration/console/console.csproj
+++ b/docs/core/extensions/snippets/configuration/console/console.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/custom-provider/custom-provider.csproj b/docs/core/extensions/snippets/configuration/custom-provider/custom-provider.csproj
index 155179bcc5c2a..ab5f0c73fdb16 100644
--- a/docs/core/extensions/snippets/configuration/custom-provider/custom-provider.csproj
+++ b/docs/core/extensions/snippets/configuration/custom-provider/custom-provider.csproj
@@ -9,11 +9,11 @@
-
-
-
-
-
+
+
+
+
+
diff --git a/docs/core/extensions/snippets/configuration/dependency-injection/dependency-injection.csproj b/docs/core/extensions/snippets/configuration/dependency-injection/dependency-injection.csproj
index e4f9f1012054c..f6c2e104543fb 100644
--- a/docs/core/extensions/snippets/configuration/dependency-injection/dependency-injection.csproj
+++ b/docs/core/extensions/snippets/configuration/dependency-injection/dependency-injection.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/di-anti-patterns/di-anti-patterns.csproj b/docs/core/extensions/snippets/configuration/di-anti-patterns/di-anti-patterns.csproj
index a52d603726da3..c04d00db1c634 100644
--- a/docs/core/extensions/snippets/configuration/di-anti-patterns/di-anti-patterns.csproj
+++ b/docs/core/extensions/snippets/configuration/di-anti-patterns/di-anti-patterns.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/options-action/options-action.csproj b/docs/core/extensions/snippets/configuration/options-action/options-action.csproj
index f0893603dd47f..4c4c05f2c2ea9 100644
--- a/docs/core/extensions/snippets/configuration/options-action/options-action.csproj
+++ b/docs/core/extensions/snippets/configuration/options-action/options-action.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/options-configparam/options-configparam.csproj b/docs/core/extensions/snippets/configuration/options-configparam/options-configparam.csproj
index 0b5bc46e2abf5..e34b6b8610a6f 100644
--- a/docs/core/extensions/snippets/configuration/options-configparam/options-configparam.csproj
+++ b/docs/core/extensions/snippets/configuration/options-configparam/options-configparam.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/options-noparams/options-noparams.csproj b/docs/core/extensions/snippets/configuration/options-noparams/options-noparams.csproj
index 7c006795015ec..9b5b8343c7511 100644
--- a/docs/core/extensions/snippets/configuration/options-noparams/options-noparams.csproj
+++ b/docs/core/extensions/snippets/configuration/options-noparams/options-noparams.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/options-object/options-object.csproj b/docs/core/extensions/snippets/configuration/options-object/options-object.csproj
index 9fb9f2e9cae37..01a9b02d81ae4 100644
--- a/docs/core/extensions/snippets/configuration/options-object/options-object.csproj
+++ b/docs/core/extensions/snippets/configuration/options-object/options-object.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/options-postconfig/options-postconfig.csproj b/docs/core/extensions/snippets/configuration/options-postconfig/options-postconfig.csproj
index 83f0b4e001ffb..e5299a4dfbf3f 100644
--- a/docs/core/extensions/snippets/configuration/options-postconfig/options-postconfig.csproj
+++ b/docs/core/extensions/snippets/configuration/options-postconfig/options-postconfig.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/options-validation-onstart/options-validation-onstart.csproj b/docs/core/extensions/snippets/configuration/options-validation-onstart/options-validation-onstart.csproj
index d87791c22796a..981a68816561a 100644
--- a/docs/core/extensions/snippets/configuration/options-validation-onstart/options-validation-onstart.csproj
+++ b/docs/core/extensions/snippets/configuration/options-validation-onstart/options-validation-onstart.csproj
@@ -19,9 +19,9 @@
-
-
-
+
+
+
diff --git a/docs/core/extensions/snippets/configuration/worker-scope/worker-scope.csproj b/docs/core/extensions/snippets/configuration/worker-scope/worker-scope.csproj
index 3226a81aedf63..96d585ce9b414 100644
--- a/docs/core/extensions/snippets/configuration/worker-scope/worker-scope.csproj
+++ b/docs/core/extensions/snippets/configuration/worker-scope/worker-scope.csproj
@@ -8,7 +8,7 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/configuration/worker-service/worker-service.csproj b/docs/core/extensions/snippets/configuration/worker-service/worker-service.csproj
index 3e59fbb1bfede..8065fd2af2196 100644
--- a/docs/core/extensions/snippets/configuration/worker-service/worker-service.csproj
+++ b/docs/core/extensions/snippets/configuration/worker-service/worker-service.csproj
@@ -9,7 +9,7 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/di/di-basics/di-basics.csproj b/docs/core/extensions/snippets/di/di-basics/di-basics.csproj
index f698c2c364993..0316a2c2e7d27 100644
--- a/docs/core/extensions/snippets/di/di-basics/di-basics.csproj
+++ b/docs/core/extensions/snippets/di/di-basics/di-basics.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/docs/core/extensions/snippets/fileglobbing/example/example.csproj b/docs/core/extensions/snippets/fileglobbing/example/example.csproj
index b2148f0776316..de327c2228360 100644
--- a/docs/core/extensions/snippets/fileglobbing/example/example.csproj
+++ b/docs/core/extensions/snippets/fileglobbing/example/example.csproj
@@ -59,8 +59,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/http/basic/basic.csproj b/docs/core/extensions/snippets/http/basic/basic.csproj
index dbb1128005d22..b955c750cd3f2 100644
--- a/docs/core/extensions/snippets/http/basic/basic.csproj
+++ b/docs/core/extensions/snippets/http/basic/basic.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/http/configurehandler/configurehandler.csproj b/docs/core/extensions/snippets/http/configurehandler/configurehandler.csproj
index 66a59e7c43520..2b3001542723f 100644
--- a/docs/core/extensions/snippets/http/configurehandler/configurehandler.csproj
+++ b/docs/core/extensions/snippets/http/configurehandler/configurehandler.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/http/generated/generated.csproj b/docs/core/extensions/snippets/http/generated/generated.csproj
index 254e58ba1c9dc..74013b98cab41 100644
--- a/docs/core/extensions/snippets/http/generated/generated.csproj
+++ b/docs/core/extensions/snippets/http/generated/generated.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/http/named/named.csproj b/docs/core/extensions/snippets/http/named/named.csproj
index dd0b910eb137d..2f00f0bf30434 100644
--- a/docs/core/extensions/snippets/http/named/named.csproj
+++ b/docs/core/extensions/snippets/http/named/named.csproj
@@ -19,8 +19,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/http/typed/typed.csproj b/docs/core/extensions/snippets/http/typed/typed.csproj
index 20f53b2040b98..d00a8c8bbe95a 100644
--- a/docs/core/extensions/snippets/http/typed/typed.csproj
+++ b/docs/core/extensions/snippets/http/typed/typed.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/localization/example/example.csproj b/docs/core/extensions/snippets/localization/example/example.csproj
index c1482a2310226..30815ec2f3848 100644
--- a/docs/core/extensions/snippets/localization/example/example.csproj
+++ b/docs/core/extensions/snippets/localization/example/example.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/logging/console-formatter-custom-with-config/console-formatter-custom-with-config.csproj b/docs/core/extensions/snippets/logging/console-formatter-custom-with-config/console-formatter-custom-with-config.csproj
index d63338c02f8e2..ef276d9136095 100644
--- a/docs/core/extensions/snippets/logging/console-formatter-custom-with-config/console-formatter-custom-with-config.csproj
+++ b/docs/core/extensions/snippets/logging/console-formatter-custom-with-config/console-formatter-custom-with-config.csproj
@@ -19,7 +19,7 @@
-
+
diff --git a/docs/core/extensions/snippets/logging/console-formatter-custom/console-formatter-custom.csproj b/docs/core/extensions/snippets/logging/console-formatter-custom/console-formatter-custom.csproj
index a54f94647b4df..75966daf54373 100644
--- a/docs/core/extensions/snippets/logging/console-formatter-custom/console-formatter-custom.csproj
+++ b/docs/core/extensions/snippets/logging/console-formatter-custom/console-formatter-custom.csproj
@@ -9,7 +9,7 @@
-
+
diff --git a/docs/core/extensions/snippets/logging/console-formatter-json/console-formatter-json.csproj b/docs/core/extensions/snippets/logging/console-formatter-json/console-formatter-json.csproj
index 271f3f5517086..6f852a8877fed 100644
--- a/docs/core/extensions/snippets/logging/console-formatter-json/console-formatter-json.csproj
+++ b/docs/core/extensions/snippets/logging/console-formatter-json/console-formatter-json.csproj
@@ -9,7 +9,7 @@
-
+
diff --git a/docs/core/extensions/snippets/logging/console-formatter-simple/console-formatter-simple.csproj b/docs/core/extensions/snippets/logging/console-formatter-simple/console-formatter-simple.csproj
index 51228a780c160..01b9a90fd9893 100644
--- a/docs/core/extensions/snippets/logging/console-formatter-simple/console-formatter-simple.csproj
+++ b/docs/core/extensions/snippets/logging/console-formatter-simple/console-formatter-simple.csproj
@@ -9,8 +9,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/logging/console-formatter-systemd/console-formatter-systemd.csproj b/docs/core/extensions/snippets/logging/console-formatter-systemd/console-formatter-systemd.csproj
index 616f1ab829164..1ecfc70b38918 100644
--- a/docs/core/extensions/snippets/logging/console-formatter-systemd/console-formatter-systemd.csproj
+++ b/docs/core/extensions/snippets/logging/console-formatter-systemd/console-formatter-systemd.csproj
@@ -9,7 +9,7 @@
-
+
diff --git a/docs/core/extensions/snippets/logging/di-without-host/di-without-host.csproj b/docs/core/extensions/snippets/logging/di-without-host/di-without-host.csproj
index 99d01d3c2bf8d..93037f1e7a579 100644
--- a/docs/core/extensions/snippets/logging/di-without-host/di-without-host.csproj
+++ b/docs/core/extensions/snippets/logging/di-without-host/di-without-host.csproj
@@ -9,9 +9,9 @@
-
-
-
+
+
+
diff --git a/docs/core/extensions/snippets/logging/getting-started-logger-message/getting-started-logger-message.csproj b/docs/core/extensions/snippets/logging/getting-started-logger-message/getting-started-logger-message.csproj
index d382838d97105..63acaaf004377 100644
--- a/docs/core/extensions/snippets/logging/getting-started-logger-message/getting-started-logger-message.csproj
+++ b/docs/core/extensions/snippets/logging/getting-started-logger-message/getting-started-logger-message.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/logging/getting-started-open-telemetry/getting-started-open-telemetry.csproj b/docs/core/extensions/snippets/logging/getting-started-open-telemetry/getting-started-open-telemetry.csproj
index 19f93f4cf4785..2057d1ff3ea15 100644
--- a/docs/core/extensions/snippets/logging/getting-started-open-telemetry/getting-started-open-telemetry.csproj
+++ b/docs/core/extensions/snippets/logging/getting-started-open-telemetry/getting-started-open-telemetry.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/docs/core/extensions/snippets/logging/getting-started-type-category-name/getting-started-type-category-name.csproj b/docs/core/extensions/snippets/logging/getting-started-type-category-name/getting-started-type-category-name.csproj
index d382838d97105..63acaaf004377 100644
--- a/docs/core/extensions/snippets/logging/getting-started-type-category-name/getting-started-type-category-name.csproj
+++ b/docs/core/extensions/snippets/logging/getting-started-type-category-name/getting-started-type-category-name.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/logging/getting-started/getting-started.csproj b/docs/core/extensions/snippets/logging/getting-started/getting-started.csproj
index d382838d97105..63acaaf004377 100644
--- a/docs/core/extensions/snippets/logging/getting-started/getting-started.csproj
+++ b/docs/core/extensions/snippets/logging/getting-started/getting-started.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/docs/core/extensions/snippets/logging/library-authors/library-authors.csproj b/docs/core/extensions/snippets/logging/library-authors/library-authors.csproj
index 016a0f3d8a2a7..ca317ec731c0a 100644
--- a/docs/core/extensions/snippets/logging/library-authors/library-authors.csproj
+++ b/docs/core/extensions/snippets/logging/library-authors/library-authors.csproj
@@ -9,7 +9,7 @@
-
+
diff --git a/docs/core/extensions/snippets/logging/logger-message-generator/logger-message-generator.csproj b/docs/core/extensions/snippets/logging/logger-message-generator/logger-message-generator.csproj
index eeec19b2da8f6..ef039d6a46e8a 100644
--- a/docs/core/extensions/snippets/logging/logger-message-generator/logger-message-generator.csproj
+++ b/docs/core/extensions/snippets/logging/logger-message-generator/logger-message-generator.csproj
@@ -9,7 +9,7 @@
-
+
diff --git a/docs/core/extensions/snippets/logging/worker-service-options/worker-service-options.csproj b/docs/core/extensions/snippets/logging/worker-service-options/worker-service-options.csproj
index f0cba65d646f6..ac9709c85a9d2 100644
--- a/docs/core/extensions/snippets/logging/worker-service-options/worker-service-options.csproj
+++ b/docs/core/extensions/snippets/logging/worker-service-options/worker-service-options.csproj
@@ -10,6 +10,6 @@
-
+
diff --git a/docs/core/extensions/snippets/primitives/change/tokens.csproj b/docs/core/extensions/snippets/primitives/change/tokens.csproj
index 535c0e850c656..f1cda4c7ea8b4 100644
--- a/docs/core/extensions/snippets/primitives/change/tokens.csproj
+++ b/docs/core/extensions/snippets/primitives/change/tokens.csproj
@@ -9,7 +9,7 @@
-
+
diff --git a/docs/core/extensions/snippets/primitives/string/tokenizers.csproj b/docs/core/extensions/snippets/primitives/string/tokenizers.csproj
index bce8f93931729..a53180a700ce8 100644
--- a/docs/core/extensions/snippets/primitives/string/tokenizers.csproj
+++ b/docs/core/extensions/snippets/primitives/string/tokenizers.csproj
@@ -10,7 +10,7 @@
-
+
diff --git a/docs/core/extensions/snippets/ratelimit/http/http.csproj b/docs/core/extensions/snippets/ratelimit/http/http.csproj
index 576eb9c251c28..e6ad797bd7cbd 100644
--- a/docs/core/extensions/snippets/ratelimit/http/http.csproj
+++ b/docs/core/extensions/snippets/ratelimit/http/http.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/docs/core/extensions/snippets/workers/background-service/App.WorkerService.csproj b/docs/core/extensions/snippets/workers/background-service/App.WorkerService.csproj
index b3fa9371c6a66..d5cfbf1992539 100644
--- a/docs/core/extensions/snippets/workers/background-service/App.WorkerService.csproj
+++ b/docs/core/extensions/snippets/workers/background-service/App.WorkerService.csproj
@@ -9,7 +9,7 @@
-
+
diff --git a/docs/core/extensions/snippets/workers/cloud-service/App.CloudService.csproj b/docs/core/extensions/snippets/workers/cloud-service/App.CloudService.csproj
index 3b63c9c04d4a9..893c82c057620 100644
--- a/docs/core/extensions/snippets/workers/cloud-service/App.CloudService.csproj
+++ b/docs/core/extensions/snippets/workers/cloud-service/App.CloudService.csproj
@@ -7,7 +7,7 @@
Linux
-
+
diff --git a/docs/core/extensions/snippets/workers/queue-service/App.QueueService.csproj b/docs/core/extensions/snippets/workers/queue-service/App.QueueService.csproj
index 3fa102def7049..5ccff25cccc11 100644
--- a/docs/core/extensions/snippets/workers/queue-service/App.QueueService.csproj
+++ b/docs/core/extensions/snippets/workers/queue-service/App.QueueService.csproj
@@ -8,6 +8,6 @@
-
+
diff --git a/docs/core/extensions/snippets/workers/scoped-service/App.ScopedService.csproj b/docs/core/extensions/snippets/workers/scoped-service/App.ScopedService.csproj
index c74197d51ded0..4108c35545ac9 100644
--- a/docs/core/extensions/snippets/workers/scoped-service/App.ScopedService.csproj
+++ b/docs/core/extensions/snippets/workers/scoped-service/App.ScopedService.csproj
@@ -8,6 +8,6 @@
-
+
diff --git a/docs/core/extensions/snippets/workers/signal-completion-service/App.SignalCompletionService/App.SignalCompletionService.csproj b/docs/core/extensions/snippets/workers/signal-completion-service/App.SignalCompletionService/App.SignalCompletionService.csproj
index cafc348b93111..e9f5253cf6504 100644
--- a/docs/core/extensions/snippets/workers/signal-completion-service/App.SignalCompletionService/App.SignalCompletionService.csproj
+++ b/docs/core/extensions/snippets/workers/signal-completion-service/App.SignalCompletionService/App.SignalCompletionService.csproj
@@ -7,6 +7,6 @@
-
+
diff --git a/docs/core/extensions/snippets/workers/timer-service/App.TimerHostedService.csproj b/docs/core/extensions/snippets/workers/timer-service/App.TimerHostedService.csproj
index 5475c8423eeb3..f1b9a5fd06f95 100644
--- a/docs/core/extensions/snippets/workers/timer-service/App.TimerHostedService.csproj
+++ b/docs/core/extensions/snippets/workers/timer-service/App.TimerHostedService.csproj
@@ -8,6 +8,6 @@
-
+
diff --git a/docs/core/extensions/snippets/workers/windows-service/App.WindowsService.csproj b/docs/core/extensions/snippets/workers/windows-service/App.WindowsService.csproj
index 453eb9b5f8bca..cdb45f1079517 100644
--- a/docs/core/extensions/snippets/workers/windows-service/App.WindowsService.csproj
+++ b/docs/core/extensions/snippets/workers/windows-service/App.WindowsService.csproj
@@ -12,7 +12,7 @@
-
-
+
+
diff --git a/docs/core/porting/versioning-sdk-msbuild-vs.md b/docs/core/porting/versioning-sdk-msbuild-vs.md
index 04f448f75ba5a..b38a308a2ebf0 100644
--- a/docs/core/porting/versioning-sdk-msbuild-vs.md
+++ b/docs/core/porting/versioning-sdk-msbuild-vs.md
@@ -55,10 +55,10 @@ The support timeframe for the SDK typically matches that of the Visual Studio ve
| SDK version | MSBuild/Visual Studio version | Ship date | Lifecycle |
|-------------|-------------------------------|-----------|---------------------|
-| 8.0.1xx | 17.8 | Nov '23 | Nov '251 |
+| 8.0.1xx | 17.8 | Nov '23 | Nov '261 |
| 8.0.2xx | 17.9 | Feb '24 | May '24 |
| 8.0.3xx | 17.10 | May '24 | Jan '26 |
-| 8.0.4xx | 17.11 | Aug '24 | Nov '252 |
+| 8.0.4xx | 17.11 | Aug '24 | Nov '262 |
| 9.0.1xx | 17.12 | Nov '24 | May '26 |
| 9.0.2xx | 17.13 | Feb '25 | May '25 |
| 9.0.3xx | 17.14 | May '25 | May '26 |
diff --git a/docs/core/resilience/snippets/http-resilience/http-resilience.csproj b/docs/core/resilience/snippets/http-resilience/http-resilience.csproj
index 7b1a2f3edc613..9b28bf632edc8 100644
--- a/docs/core/resilience/snippets/http-resilience/http-resilience.csproj
+++ b/docs/core/resilience/snippets/http-resilience/http-resilience.csproj
@@ -18,9 +18,9 @@
-
-
-
+
+
+
diff --git a/docs/core/resilience/snippets/resilience/resilience.csproj b/docs/core/resilience/snippets/resilience/resilience.csproj
index 28a9b992fc3df..8b7aba43b7282 100644
--- a/docs/core/resilience/snippets/resilience/resilience.csproj
+++ b/docs/core/resilience/snippets/resilience/resilience.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/docs/core/whats-new/snippets/dotnet-8/csharp/ConsoleApp/Project.csproj b/docs/core/whats-new/snippets/dotnet-8/csharp/ConsoleApp/Project.csproj
index 5b1f8905c078c..0a95035b8476b 100644
--- a/docs/core/whats-new/snippets/dotnet-8/csharp/ConsoleApp/Project.csproj
+++ b/docs/core/whats-new/snippets/dotnet-8/csharp/ConsoleApp/Project.csproj
@@ -9,9 +9,9 @@
-
-
-
+
+
+
diff --git a/docs/csharp/asynchronous-programming/index.md b/docs/csharp/asynchronous-programming/index.md
index 147cf1af15947..42926095dc2aa 100644
--- a/docs/csharp/asynchronous-programming/index.md
+++ b/docs/csharp/asynchronous-programming/index.md
@@ -1,73 +1,65 @@
---
title: Asynchronous programming
-description: An overview of the C# language support for asynchronous programming using async, await, Task, and Task
-ms.date: 09/28/2023
+description: Explore an overview of the C# language support for asynchronous programming by using async, await, Task, and Task.
+ms.date: 03/10/2025
---
# Asynchronous programming with async and await
-The [Task asynchronous programming model (TAP)](task-asynchronous-programming-model.md) provides an abstraction over asynchronous code. You write code as a sequence of statements, just like always. You can read that code as though each statement completes before the next begins. The compiler performs many transformations because some of those statements may start work and return a that represents the ongoing work.
+The [Task asynchronous programming (TAP) model](task-asynchronous-programming-model.md) provides a layer of abstraction over typical asynchronous coding. In this model, you write code as a sequence of statements, the same as usual. The difference is you can read your task-based code as the compiler processes each statement and before it starts processing the next statement. To accomplish this model, the compiler performs many transformations to complete each task. Some statements can initiate work and return a object that represents the ongoing work and the compiler must resolve these transformations. The goal of task asynchronous programming is to enable code that reads like a sequence of statements, but executes in a more complicated order. Execution is based on external resource allocation and when tasks complete.
-That's the goal of this syntax: enable code that reads like a sequence of statements, but executes in a much more complicated order based on external resource allocation and when tasks are complete. It's analogous to how people give instructions for processes that include asynchronous tasks. Throughout this article, you'll use an example of instructions for making breakfast to see how the `async` and `await` keywords make it easier to reason about code that includes a series of asynchronous instructions. You'd write the instructions something like the following list to explain how to make a breakfast:
+The task asynchronous programming model is analogous to how people give instructions for processes that include asynchronous tasks. This article uses an example with instructions for making breakfast to show how the `async` and `await` keywords make it easier to reason about code that includes a series of asynchronous instructions. The instructions for making a breakfast might be provided as a list:
1. Pour a cup of coffee.
1. Heat a pan, then fry two eggs.
1. Fry three slices of bacon.
1. Toast two pieces of bread.
-1. Add butter and jam to the toast.
+1. Spread butter and jam on the toast.
1. Pour a glass of orange juice.
-If you have experience with cooking, you'd execute those instructions **asynchronously**. You'd start warming the pan for eggs, then start the bacon. You'd put the bread in the toaster, then start the eggs. At each step of the process, you'd start a task, then turn your attention to tasks that are ready for your attention.
+If you have experience with cooking, you might complete these instructions **asynchronously**. You start warming the pan for eggs, then start frying the bacon. You put the bread in the toaster, then start cooking the eggs. At each step of the process, you start a task, and then transition to other tasks that are ready for your attention.
-Cooking breakfast is a good example of asynchronous work that isn't parallel. One person (or thread) can handle all these tasks. Continuing the breakfast analogy, one person can make breakfast asynchronously by starting the next task before the first task completes. The cooking progresses whether or not someone is watching it. As soon as you start warming the pan for the eggs, you can begin frying the bacon. Once the bacon starts, you can put the bread into the toaster.
+Cooking breakfast is a good example of asynchronous work that isn't parallel. One person (or thread) can handle all the tasks. One person can make breakfast asynchronously by starting the next task before the previous task completes. Each cooking task progresses regardless of whether someone is actively watching the process. As soon as you start warming the pan for the eggs, you can begin frying the bacon. After the bacon starts to cook, you can put the bread in the toaster.
-For a parallel algorithm, you'd need multiple cooks (or threads). One would make the eggs, one the bacon, and so on. Each one would be focused on just that one task. Each cook (or thread) would be blocked synchronously waiting for the bacon to be ready to flip, or the toast to pop.
+For a parallel algorithm, you need multiple people who cook (or multiple threads). One person cooks the eggs, another fries the bacon, and so on. Each person focuses on their one specific task. Each person who is cooking (or each thread) is blocked synchronously waiting for the current task to complete: Bacon ready to flip, bread ready to pop up in toaster, and so on.
-Now, consider those same instructions written as C# statements:
+:::image type="content" source="media/synchronous-breakfast.png" border="false" alt-text="Diagram that shows instructions for preparing breakfast as a list of seven sequential tasks completed in 30 minutes.":::
-:::code language="csharp" source="snippets/index/AsyncBreakfast-starter/Program.cs" highlight="15-34":::
-
-:::image type="content" source="media/synchronous-breakfast.png" alt-text="synchronous breakfast":::
+Consider the same list of synchronous instructions written as C# code statements:
-The synchronously prepared breakfast took roughly 30 minutes because the total is the sum of each task.
-
-Computers don't interpret those instructions the same way people do. The computer will block on each statement until the work is complete before moving on to the next statement. That creates an unsatisfying breakfast. The later tasks wouldn't be started until the earlier tasks had been completed. It would take much longer to create the breakfast, and some items would have gotten cold before being served.
+:::code language="csharp" source="snippets/index/AsyncBreakfast-starter/Program.cs" highlight="15-34":::
-If you want the computer to execute the above instructions asynchronously, you must write asynchronous code.
+If you interpret these instructions as a computer would, breakfast takes about 30 minutes to prepare. The duration is the sum of the individual task times. The computer blocks for each statement until all work completes, and then it proceeds to the next task statement. This approach can take significant time. In the breakfast example, the computer method creates an unsatisfying breakfast. Later tasks in the synchronous list, like toasting the bread, don't start until earlier tasks complete. Some food gets cold before the breakfast is ready to serve.
-These concerns are important for the programs you write today. When you write client programs, you want the UI to be responsive to user input. Your application shouldn't make a phone appear frozen while it's downloading data from the web. When you write server programs, you don't want threads blocked. Those threads could be serving other requests. Using synchronous code when asynchronous alternatives exist hurts your ability to scale out less expensively. You pay for those blocked threads.
+If you want the computer to execute instructions asynchronously, you must write asynchronous code. When you write client programs, you want the UI to be responsive to user input. Your application shouldn't freeze all interaction while downloading data from the web. When you write server programs, you don't want to block threads that might be serving other requests. Using synchronous code when asynchronous alternatives exist hurts your ability to scale out less expensively. You pay for blocked threads.
-Successful modern applications require asynchronous code. Without language support, writing asynchronous code required callbacks, completion events, or other means that obscured the original intent of the code. The advantage of the synchronous code is that its step-by-step actions make it easy to scan and understand. Traditional asynchronous models forced you to focus on the asynchronous nature of the code, not on the fundamental actions of the code.
+Successful modern apps require asynchronous code. Without language support, writing asynchronous code requires callbacks, completion events, or other means that obscure the original intent of the code. The advantage of synchronous code is the step-by-step action that makes it easy to scan and understand. Traditional asynchronous models force you to focus on the asynchronous nature of the code, not on the fundamental actions of the code.
## Don't block, await instead
-The preceding code demonstrates a bad practice: constructing synchronous code to perform asynchronous operations. As written, this code blocks the thread executing it from doing any other work. It won't be interrupted while any of the tasks are in progress. It would be as though you stared at the toaster after putting the bread in. You'd ignore anyone talking to you until the toast popped.
+The previous code highlights an unfortunate programming practice: Writing synchronous code to perform asynchronous operations. The code blocks the current thread from doing any other work. The code doesn't interrupt the thread while there are running tasks. The outcome of this model is similar to staring at the toaster after you put in the bread. You ignore any interruptions and don't start other tasks until the bread pops up. You don't take the butter and jam out of the fridge. You might miss seeing a fire starting on the stove. You want to both toast the bread and handle other concerns at the same time. The same is true with your code.
-Let's start by updating this code so that the thread doesn't block while tasks are running. The `await` keyword provides a non-blocking way to start a task, then continue execution when that task completes. A simple asynchronous version of the make a breakfast code would look like the following snippet:
+You can start by updating the code so the thread doesn't block while tasks are running. The `await` keyword provides a nonblocking way to start a task, then continue execution when the task completes. A simple asynchronous version of the breakfast code looks like the following snippet:
:::code language="csharp" source="snippets/index/AsyncBreakfast-V2/Program.cs" ID="SnippetMain":::
-> [!IMPORTANT]
-> The total elapsed time is roughly the same as the initial synchronous version. The code has yet to take advantage of some of the key features of asynchronous programming.
-
-> [!TIP]
-> The method bodies of the `FryEggsAsync`, `FryBaconAsync`, and `ToastBreadAsync` have all been updated to return `Task`, `Task`, and `Task` respectively. The methods are renamed from their original version to include the "Async" suffix. Their implementations are shown as part of the [final version](#final-version) later in this article.
+The code updates the method bodies of `FryEggsAsync`, `FryBaconAsync`, and `ToastBreadAsync` to return `Task`, `Task`, and `Task` objects, respectively. The method names include the "Async" suffix. The `Main` method returns the `Task` object, although it doesn't have a `return` expression, which is by design. For more information, see [Evaluation of a void-returning async function](/dotnet/csharp/language-reference/language-specification/classes#14153-evaluation-of-a-void-returning-async-function).
> [!NOTE]
-> The `Main` method returns `Task`, despite not having a `return` expression—this is by design. For more information, see [Evaluation of a void-returning async function](/dotnet/csharp/language-reference/language-specification/classes#14153-evaluation-of-a-void-returning-async-function).
+> The updated code doesn't yet take advantage of key features of asynchronous programming, which can result in shorter completion times. The code processes the tasks in roughly the same amount of time as the initial synchronous version. For the full method implementations, see the [final version of the code](#review-final-code) later in this article.
-This code doesn't block while the eggs or the bacon are cooking. This code won't start any other tasks though. You'd still put the toast in the toaster and stare at it until it pops. But at least, you'd respond to anyone that wanted your attention. In a restaurant where multiple orders are placed, the cook could start another breakfast while the first is cooking.
+Let's apply the breakfast example to the updated code. The thread doesn't block while the eggs or bacon are cooking, but the code also doesn't start other tasks until the current work completes. You still put the bread in the toaster and stare at the toaster until the bread pops up, but you can now respond to interruptions. In a restaurant where multiple orders are placed, the cook can start a new order while another is already cooking.
-Now, the thread working on the breakfast isn't blocked while awaiting any started task that hasn't yet finished. For some applications, this change is all that's needed. A GUI application still responds to the user with just this change. However, for this scenario, you want more. You don't want each of the component tasks to be executed sequentially. It's better to start each of the component tasks before awaiting the previous task's completion.
+In the updated code, the thread working on the breakfast isn't blocked while waiting for any started task that's unfinished. For some applications, this change is all you need. You can enable your app to support user interaction while data downloads from the web. In other scenarios, you might want to start other tasks while waiting for the previous task to complete.
## Start tasks concurrently
-In many scenarios, you want to start several independent tasks immediately. Then, as each task finishes, you can continue other work that's ready. In the breakfast analogy, that's how you get breakfast done more quickly. You also get everything done close to the same time. You'll get a hot breakfast.
+For most operations, you want to start several independent tasks immediately. As each task completes, you initiate other work that's ready to start. When you apply this methodology to the breakfast example, you can prepare breakfast more quickly. You also get everything ready close to the same time, so you can enjoy a hot breakfast.
-The and related types are classes you can use to reason about tasks that are in progress. That enables you to write code that more closely resembles the way you'd create breakfast. You'd start cooking the eggs, bacon, and toast at the same time. As each requires action, you'd turn your attention to that task, take care of the next action, then wait for something else that requires your attention.
+The class and related types are classes you can use to apply this style of reasoning to tasks that are in progress. This approach enables you to write code that more closely resembles the way you create breakfast in real life. You start cooking the eggs, bacon, and toast at the same time. As each food item requires action, you turn your attention to that task, take care of the action, and then wait for something else that requires your attention.
-You start a task and hold on to the object that represents the work. You'll `await` each task before working with its result.
+In your code, you start a task and hold on to the object that represents the work. You use the `await` method on the task to delay acting on the work until the result is ready.
-Let's make these changes to the breakfast code. The first step is to store the tasks for operations when they start, rather than awaiting them:
+Apply these changes to the breakfast code. The first step is to store the tasks for operations when they start, rather than using the `await` expression:
```csharp
Coffee cup = PourCoffee();
@@ -92,7 +84,7 @@ Console.WriteLine("Oj is ready");
Console.WriteLine("Breakfast is ready!");
```
-The preceding code won't get your breakfast ready any faster. The tasks are all `await`ed as soon as they are started. Next, you can move the `await` statements for the bacon and eggs to the end of the method, before serving breakfast:
+These revisions don't help to get your breakfast ready any faster. The `await` expression is applied to all tasks as soon as they start. The next step is to move the `await` expressions for the bacon and eggs to the end of the method, before you serve the breakfast:
```csharp
Coffee cup = PourCoffee();
@@ -117,32 +109,38 @@ Console.WriteLine("Bacon is ready");
Console.WriteLine("Breakfast is ready!");
```
-:::image type="content" source="media/asynchronous-breakfast.png" alt-text="asynchronous breakfast":::
+You now have an asynchronously prepared breakfast that takes about 20 minutes to prepare. The total cook time is reduced because some tasks run concurrently.
-The asynchronously prepared breakfast took roughly 20 minutes, this time savings is because some tasks ran concurrently.
+:::image type="content" source="media/asynchronous-breakfast.png" border="false" alt-text="Diagram that shows instructions for preparing breakfast as eight asynchronous tasks that complete in about 20 minutes, where unfortunately, the eggs and bacon burn.":::
-The preceding code works better. You start all the asynchronous tasks at once. You await each task only when you need the results. The preceding code may be similar to code in a web application that makes requests to different microservices, then combines the results into a single page. You'll make all the requests immediately, then `await` all those tasks and compose the web page.
+The code updates improve the preparation process by reducing the cook time, but they introduce a regression by burning the eggs and bacon. You start all the asynchronous tasks at once. You wait on each task only when you need the results. The code might be similar to program in a web application that makes requests to different microservices and then combines the results into a single page. You make all the requests immediately, and then apply the `await` expression on all those tasks and compose the web page.
-## Composition with tasks
+## Support composition with tasks
- You have everything ready for breakfast at the same time except the toast. Making the toast is the composition of an asynchronous operation (toasting the bread), and synchronous operations (adding the butter and the jam). Updating this code illustrates an important concept:
+The previous code revisions help get everything ready for breakfast at the same time, except the toast. The process of making the toast is a _composition_ of an asynchronous operation (toast the bread) with synchronous operations (spread butter and jam on the toast). This example illustrates an important concept about asynchronous programming:
> [!IMPORTANT]
> The composition of an asynchronous operation followed by synchronous work is an asynchronous operation. Stated another way, if any portion of an operation is asynchronous, the entire operation is asynchronous.
-The preceding code showed you that you can use or objects to hold running tasks. You `await` each task before using its result. The next step is to create methods that represent the combination of other work. Before serving breakfast, you want to await the task that represents toasting the bread before adding butter and jam. You can represent that work with the following code:
+In the previous updates, you learned how to use or objects to hold running tasks. You wait on each task before you use its result. The next step is to create methods that represent the combination of other work. Before you serve breakfast, you want to wait on the task that represents toasting the bread before you spread the butter and jam.
+
+You can represent this work with the following code:
:::code language="csharp" source="snippets/index/AsyncBreakfast-V3/Program.cs" ID="SnippetComposeToastTask":::
-The preceding method has the `async` modifier in its signature. That signals to the compiler that this method contains an `await` statement; it contains asynchronous operations. This method represents the task that toasts the bread, then adds butter and jam. This method returns a that represents the composition of those three operations. The main block of code now becomes:
+The `MakeToastWithButterAndJamAsync` method has the `async` modifier in its signature that signals to the compiler that the method contains an `await` expression and contains asynchronous operations. The method represents the task that toasts the bread, then spreads the butter and jam. The method returns a object that represents the composition of the three operations.
+
+The revised main block of code now looks like this:
:::code language="csharp" source="snippets/index/AsyncBreakfast-V3/Program.cs" ID="SnippetMain":::
-The previous change illustrated an important technique for working with asynchronous code. You compose tasks by separating the operations into a new method that returns a task. You can choose when to await that task. You can start other tasks concurrently.
+This code change illustrates an important technique for working with asynchronous code. You compose tasks by separating the operations into a new method that returns a task. You can choose when to wait on that task. You can start other tasks concurrently.
+
+## Handle asynchronous exceptions
-## Asynchronous exceptions
+Up to this point, your code implicitly assumes all tasks complete successfully. Asynchronous methods throw exceptions, just like their synchronous counterparts. The goals for asynchronous support for exceptions and error handling are the same as for asynchronous support in general. The best practice is to write code that reads like a series of synchronous statements. Tasks throw exceptions when they can't complete successfully. The client code can catch those exceptions when the `await` expression is applied to a started task.
-Up to this point, you've implicitly assumed that all these tasks complete successfully. Asynchronous methods throw exceptions, just like their synchronous counterparts. Asynchronous support for exceptions and error handling strives for the same goals as asynchronous support in general: You should write code that reads like a series of synchronous statements. Tasks throw exceptions when they can't complete successfully. The client code can catch those exceptions when a started task is `awaited`. For example, let's assume that the toaster catches fire while making the toast. You can simulate that by modifying the `ToastBreadAsync` method to match the following code:
+In the breakfast example, suppose the toaster catches fire while toasting the bread. You can simulate that problem by modifying the `ToastBreadAsync` method to match the following code:
```csharp
private static async Task ToastBreadAsync(int slices)
@@ -163,9 +161,9 @@ private static async Task ToastBreadAsync(int slices)
```
> [!NOTE]
-> You'll get a warning when you compile the preceding code regarding unreachable code. That's intentional, because once the toaster catches fire, operations won't proceed normally.
+> When you compile this code, you see a warning about unreachable code. This error is by design. After the toaster catches fire, operations don't proceed normally and the code returns an error.
-Run the application after making these changes, and you'll output similar to the following text:
+After you make the code changes, run the application and check the output:
```console
Pouring coffee
@@ -194,27 +192,30 @@ Unhandled exception. System.InvalidOperationException: The toaster is on fire
at AsyncBreakfast.Program.(String[] args)
```
-You'll notice quite a few tasks are completed between when the toaster catches fire and the exception is observed. When a task that runs asynchronously throws an exception, that Task is ***faulted***. The Task object holds the exception thrown in the property. Faulted tasks throw an exception when they're awaited.
+Notice that quite a few tasks finish between the time when the toaster catches fire and the system observes the exception. When a task that runs asynchronously throws an exception, that task is **faulted**. The `Task` object holds the exception thrown in the property. Faulted tasks throw an exception when the `await` expression is applied to the task.
-There are two important mechanisms to understand: how an exception is stored in a faulted task, and how an exception is unpackaged and rethrown when code awaits a faulted task.
+There are two important mechanisms to understand about this process:
-When code running asynchronously throws an exception, that exception is stored in the `Task`. The property is a because more than one exception may be thrown during asynchronous work. Any exception thrown is added to the collection. If that `Exception` property is null, a new `AggregateException` is created and the thrown exception is the first item in the collection.
+- How an exception is stored in a faulted task
+- How an exception is unpackaged and rethrown when code waits (`await`) on a faulted task
-The most common scenario for a faulted task is that the `Exception` property contains exactly one exception. When code `awaits` a faulted task, the first exception in the collection is rethrown. That's why the output from this example shows an `InvalidOperationException` instead of an `AggregateException`. Extracting the first inner exception makes working with asynchronous methods as similar as possible to working with their synchronous counterparts. You can examine the `Exception` property in your code when your scenario may generate multiple exceptions.
+When code running asynchronously throws an exception, the exception is stored in the `Task` object. The property is a object because more than one exception might be thrown during asynchronous work. Any exception thrown is added to the collection. If the `Exception` property is null, a new `AggregateException` object is created and the thrown exception is the first item in the collection.
+
+The most common scenario for a faulted task is that the `Exception` property contains exactly one exception. When your code waits on a faulted task, it rethrows the first exception in the collection. This result is the reason why the output from the example shows an object rather than an `AggregateException` object. Extracting the first inner exception makes working with asynchronous methods as similar as possible to working with their synchronous counterparts. You can examine the `Exception` property in your code when your scenario might generate multiple exceptions.
> [!TIP]
-> We recommend that any argument validation exceptions emerge *synchronously* from task-returning methods. For more information and an example of how to do it, see [Exceptions in task-returning methods](../fundamentals/exceptions/creating-and-throwing-exceptions.md#exceptions-in-task-returning-methods).
+> The recommended practice is for any argument validation exceptions to emerge *synchronously* from task-returning methods. For more information and examples, see [Exceptions in task-returning methods](../fundamentals/exceptions/creating-and-throwing-exceptions.md#exceptions-in-task-returning-methods).
-Before going on, comment out these two lines in your `ToastBreadAsync` method. You don't want to start another fire:
+Before you continue to the next section, comment out the following two statements in your `ToastBreadAsync` method. You don't want to start another fire:
```csharp
Console.WriteLine("Fire! Toast is ruined!");
throw new InvalidOperationException("The toaster is on fire");
```
-## Await tasks efficiently
+## Apply await expressions to tasks efficiently
-The series of `await` statements at the end of the preceding code can be improved by using methods of the `Task` class. One of those APIs is , which returns a that completes when all the tasks in its argument list have completed, as shown in the following code:
+You can improve the series of `await` expressions at the end of the previous code by using methods of the `Task` class. One API is the method, which returns a object that completes when all the tasks in its argument list are complete. The following code demonstrates this method:
```csharp
await Task.WhenAll(eggsTask, baconTask, toastTask);
@@ -224,7 +225,7 @@ Console.WriteLine("Toast is ready");
Console.WriteLine("Breakfast is ready!");
```
-Another option is to use , which returns a `Task` that completes when any of its arguments complete. You can await the returned task, knowing that it has already finished. The following code shows how you could use to await the first task to finish and then process its result. After processing the result from the completed task, you remove that completed task from the list of tasks passed to `WhenAny`.
+Another option is to use the method, which returns a `Task` object that completes when any of its arguments complete. You can wait on the returned task because you know the task is done. The following code shows how you can use the method to wait on the first task to finish and then process its result. After you process the result from the completed task, you remove the completed task from the list of tasks passed to the `WhenAny` method.
```csharp
var breakfastTasks = new List { eggsTask, baconTask, toastTask };
@@ -248,19 +249,21 @@ while (breakfastTasks.Count > 0)
}
```
-Near the end, you see the line `await finishedTask;`. The line `await Task.WhenAny` doesn't await the finished task. It `await`s the `Task` returned by `Task.WhenAny`. The result of `Task.WhenAny` is the task that has completed (or faulted). You should `await` that task again, even though you know it's finished running. That's how you retrieve its result, or ensure that the exception causing it to fault gets thrown.
+Near the end of the code snippet, notice the `await finishedTask;` expression. The `await Task.WhenAny` expression doesn't wait on the finished task, but rather waits on the `Task` object returned by the `Task.WhenAny` method. The result of the `Task.WhenAny` method is the completed (or faulted) task. The best practice is to wait on the task again, even when you know the task is complete. In this manner, you can retrieve the task result, or ensure any exception that causes the task to fault is thrown.
+
+### Review final code
+
+Here's what the final version of the code looks like:
-After all those changes, the final version of the code looks like this:
-
:::code language="csharp" source="snippets/index/AsyncBreakfast-final/Program.cs" highlight="16-47":::
-:::image type="content" source="media/whenany-async-breakfast.png" alt-text="when any async breakfast":::
+The code completes the asynchronous breakfast tasks in about 15 minutes. The total time is reduced because some tasks run concurrently. The code simultaneously monitors multiple tasks and takes action only as needed.
-The final version of the asynchronously prepared breakfast took roughly 6 minutes because some tasks ran concurrently, and the code monitored multiple tasks at once and only took action when it was needed.
+:::image type="content" source="media/whenany-async-breakfast.png" border="false" alt-text="Diagram that shows instructions for preparing breakfast as six asynchronous tasks that complete in about 15 minutes, and the code monitors for possible interruptions.":::
-This final code is asynchronous. It more accurately reflects how a person would cook a breakfast. Compare the preceding code with the first code sample in this article. The core actions are still clear from reading the code. You can read this code the same way you'd read those instructions for making a breakfast at the beginning of this article. The language features for `async` and `await` provide the translation every person makes to follow those written instructions: start tasks as you can and don't block waiting for tasks to complete.
+The final code is asynchronous. It more accurately reflects how a person might cook breakfast. Compare the final code with the first code sample in the article. The core actions are still clear by reading the code. You can read the final code the same way you read the list of instructions for making a breakfast, as shown at the beginning of the article. The language features for the `async` and `await` keywords provide the translation every person makes to follow the written instructions: Start tasks as you can and don't block while waiting for tasks to complete.
-## Next steps
+## Next step
> [!div class="nextstepaction"]
> [Explore real world scenarios for asynchronous programs](async-scenarios.md)
diff --git a/docs/csharp/fundamentals/exceptions/creating-and-throwing-exceptions.md b/docs/csharp/fundamentals/exceptions/creating-and-throwing-exceptions.md
index 8f5ed99204671..5d92fd999644a 100644
--- a/docs/csharp/fundamentals/exceptions/creating-and-throwing-exceptions.md
+++ b/docs/csharp/fundamentals/exceptions/creating-and-throwing-exceptions.md
@@ -46,7 +46,7 @@ The following list identifies practices to avoid when throwing exceptions:
## Exceptions in task-returning methods
-Methods declared with the `async` modifier have some special considerations when it comes to exceptions. Exceptions thrown in an `async` method are stored in the returned task and don't emerge until, for example, the task is awaited. For more information about stored exceptions, see [Asynchronous exceptions](../../asynchronous-programming/index.md#asynchronous-exceptions).
+Methods declared with the `async` modifier have some special considerations when it comes to exceptions. Exceptions thrown in an `async` method are stored in the returned task and don't emerge until, for example, the task is awaited. For more information about stored exceptions, see [Asynchronous exceptions](../../asynchronous-programming/index.md#handle-asynchronous-exceptions).
We recommend that you validate arguments and throw any corresponding exceptions, such as and , before entering the asynchronous parts of your methods. That is, these validation exceptions should emerge synchronously before the work starts. The following code snippet shows an example where, if the exceptions are thrown, the exceptions would emerge synchronously, whereas the would be stored in the returned task.
diff --git a/docs/csharp/language-reference/compiler-messages/nullable-warnings.md b/docs/csharp/language-reference/compiler-messages/nullable-warnings.md
index 468c978d50110..87cb8b4ce4da8 100644
--- a/docs/csharp/language-reference/compiler-messages/nullable-warnings.md
+++ b/docs/csharp/language-reference/compiler-messages/nullable-warnings.md
@@ -127,6 +127,10 @@ ms.date: 02/20/2025
---
# Resolve nullable warnings
+The purpose of nullable warnings is to minimize the chance that your application throws a when run. To achieve this goal, the compiler uses static analysis and issues warnings when your code has constructs that might lead to null reference exceptions. You provide the compiler with information for its static analysis by applying type annotations and attributes. These annotations and attributes describe the nullability of arguments, parameters, and members of your types. In this article, you learn different techniques to address the nullable warnings the compiler generates from its static analysis. The techniques described here are for general C# code. Learn to work with nullable reference types and Entity Framework core in [Working with nullable reference types](/ef/core/miscellaneous/nullable-reference-types).
+
+Nullable reference types, including the operators `?` and `!` are allowed only when the nullable context is set to `enable` or `annotations`. You can set the nullable context using the `Nullable` [compiler option](../compiler-options/language.md#nullable) in your project file, or using the [`#nullable`](../preprocessor-directives.md#nullable-context) pragma in your source code.
+
This article covers the following compiler warnings:
- [**CS8597**](#possible-null-assigned-to-a-nonnullable-reference) - *Thrown value may be null.*
@@ -190,8 +194,6 @@ This article covers the following compiler warnings:
- [**CS8825**](#code-doesnt-match-attribute-declaration) - *Return value must be non-null because parameter is non-null.*
- [**CS8847**](#exhaustive-switch-expression) - *The switch expression does not handle some null inputs (it is not exhaustive). However, a pattern with a 'when' clause might successfully match this value.*
-The purpose of nullable warnings is to minimize the chance that your application throws a when run. To achieve this goal, the compiler uses static analysis and issues warnings when your code has constructs that might lead to null reference exceptions. You provide the compiler with information for its static analysis by applying type annotations and attributes. These annotations and attributes describe the nullability of arguments, parameters, and members of your types. In this article, you learn different techniques to address the nullable warnings the compiler generates from its static analysis. The techniques described here are for general C# code. Learn to work with nullable reference types and Entity Framework core in [Working with nullable reference types](/ef/core/miscellaneous/nullable-reference-types).
-
> [!NOTE]
> The static analysis can't always deduce in what order, in a specific scenario, methods are accessed, and whether the method completes successfully without throwing an exception. Those known pitfalls are well described in [Known pitfalls](../../nullable-references.md#known-pitfalls) section.
@@ -213,8 +215,6 @@ The following warnings indicate that you haven't set the nullable context correc
- **CS8636** - *Invalid option for `/nullable`; must be `disable`, `enable`, `warnings` or `annotations`*
- **CS8637** - *Expected `enable`, `disable`, or `restore`*
-Nullable reference types, including the operators `?` and `!` are allowed only when the nullable context is set to `enable` or `annotations`. You can set the nullable annotation using the `Nullable` [compiler option](../compiler-options/language.md#nullable) in your project file, or using the [`#nullable`](../preprocessor-directives.md#nullable-context) pragma in your source code.
-
## Incorrect annotation syntax
These errors and warnings indicate that usage of the `!` or `?` annotation is incorrect.
diff --git a/docs/csharp/language-reference/compiler-messages/snippets/null-warnings/null-warnings.csproj b/docs/csharp/language-reference/compiler-messages/snippets/null-warnings/null-warnings.csproj
index 875e15d54c8a0..ae9e8c084814d 100644
--- a/docs/csharp/language-reference/compiler-messages/snippets/null-warnings/null-warnings.csproj
+++ b/docs/csharp/language-reference/compiler-messages/snippets/null-warnings/null-warnings.csproj
@@ -9,7 +9,7 @@
-
+
diff --git a/docs/csharp/programming-guide/delegates/index.md b/docs/csharp/programming-guide/delegates/index.md
index f875bfe0d3fec..b4b880996d85a 100644
--- a/docs/csharp/programming-guide/delegates/index.md
+++ b/docs/csharp/programming-guide/delegates/index.md
@@ -1,52 +1,55 @@
---
-title: "Delegates"
-description: A delegate in C# is a type that refers to methods with a parameter list and return type. Delegates are used to pass methods as arguments to other methods.
-ms.date: 12/20/2024
+title: Work with delegate types in C#
+description: Explore delegate types in C#. A delegate is a date type that refers to a method with a defined parameter list and return type. You use delegates to pass methods as arguments to other methods.
+ms.date: 03/11/2025
helpviewer_keywords:
- "C# language, delegates"
- "delegates [C#]"
---
# Delegates (C# Programming Guide)
-A [delegate](../../language-reference/builtin-types/reference-types.md) is a type that represents references to methods with a particular parameter list and return type. When you instantiate a delegate, you can associate its instance with any method with a compatible signature and return type. You can invoke (or call) the method through the delegate instance.
+A [delegate](../../language-reference/builtin-types/reference-types.md) is a type that represents references to methods with a particular parameter list and return type. When you instantiate a delegate, you can associate the delegate instance with any method that has a compatible signature and return type. You can invoke (or call) the method through the delegate instance.
-Delegates are used to pass methods as arguments to other methods. Event handlers are nothing more than methods that are invoked through delegates. You create a custom method, and a class such as a windows control can call your method when a certain event occurs. The following example shows a delegate declaration:
+Delegates are used to pass methods as arguments to other methods. Event handlers are essentially methods you invoke through delegates. When you create a custom method, a class such as a Windows control can call your method when a certain event occurs.
+
+The following example shows a delegate declaration:
:::code language="csharp" source="./snippets/Overview.cs" id="DelegateDeclaration":::
-Any method from any accessible class or struct that matches the delegate type can be assigned to the delegate. The method can be either static or an instance method. This flexibility means you can programmatically change method calls, or plug new code into existing classes.
+You can assign any method from any accessible class or struct that matches the delegate type to the delegate. The method can be either static or an instance method. The flexibility allows you to programmatically change method calls, or plug new code into existing classes.
> [!NOTE]
-> In the context of method overloading, the signature of a method does not include the return value. But in the context of delegates, the signature does include the return value. In other words, a method must have the same return type as the delegate.
+> In the context of method overloading, the signature of a method doesn't include the return value. However, in the context of delegates, the signature does include the return value. In other words, a method must have a compatible return type as the return type declared by the delegate.
-This ability to refer to a method as a parameter makes delegates ideal for defining callback methods. You can write a method that compares two objects in your application. That method can be used in a delegate for a sort algorithm. Because the comparison code is separate from the library, the sort method can be more general.
+The ability to refer to a method as a parameter makes delegates ideal for defining callback methods. You can write a method that compares two objects in your application. The method can then be used in a delegate for a sort algorithm. Because the comparison code is separate from the library, the sort method can be more general.
-[Function pointers](~/_csharplang/proposals/csharp-9.0/function-pointers.md) support similar scenarios, where you need more control over the calling convention. The code associated with a delegate is invoked using a virtual method added to a delegate type. Using function pointers, you can specify different conventions.
+[Function pointers](~/_csharplang/proposals/csharp-9.0/function-pointers.md) support similar scenarios, where you need more control over the calling convention. The code associated with a delegate is invoked by using a virtual method added to a delegate type. When you work with function pointers, you can specify different conventions.
-## Delegates Overview
+## Explore delegate characteristics
-Delegates have the following properties:
+Delegates have the following characteristics:
- Delegates allow methods to be passed as parameters.
- Delegates can be used to define callback methods.
-- Delegates can be chained together; for example, multiple methods can be called on a single event.
+- Delegates can be chained together, such as calling multiple methods on a single event.
- Methods don't have to match the delegate type exactly. For more information, see [Using Variance in Delegates](../concepts/covariance-contravariance/using-variance-in-delegates.md).
- Lambda expressions are a more concise way of writing inline code blocks. Lambda expressions (in certain contexts) are compiled to delegate types. For more information about lambda expressions, see [Lambda expressions](../../language-reference/operators/lambda-expressions.md).
-## In This Section
+## Review related articles
+
+For more information about delegates, see the following articles:
-- [Using Delegates](./using-delegates.md)
-- [When to Use Delegates Instead of Interfaces (C# Programming Guide)](/previous-versions/visualstudio/visual-studio-2010/ms173173(v=vs.100))
-- [Delegates with Named vs. Anonymous Methods](./delegates-with-named-vs-anonymous-methods.md)
-- [Using Variance in Delegates](../concepts/covariance-contravariance/using-variance-in-delegates.md)
-- [How to combine delegates (Multicast Delegates)](./how-to-combine-delegates-multicast-delegates.md)
+- [Using delegates](./using-delegates.md)
+- [Delegates with named versus anonymous methods](./delegates-with-named-vs-anonymous-methods.md)
+- [Using variance in delegates](../concepts/covariance-contravariance/using-variance-in-delegates.md)
+- [How to combine delegates (multicast delegates)](./how-to-combine-delegates-multicast-delegates.md)
- [How to declare, instantiate, and use a delegate](./how-to-declare-instantiate-and-use-a-delegate.md)
-## C# Language Specification
+## Access the C# language specification
-For more information, see [Delegates](~/_csharpstandard/standard/delegates.md) in the [C# Language Specification](~/_csharpstandard/standard/README.md). The language specification is the definitive source for C# syntax and usage.
+The language specification is the definitive source for C# syntax and usage. For more information, see [Delegates](~/_csharpstandard/standard/delegates.md) in the [C# Language Specification](~/_csharpstandard/standard/README.md).
-## See also
+## Related links
-
- [Events](../events/index.md)
diff --git a/docs/orleans/deployment/snippets/service-fabric/stateless/Orleans.ServiceFabric.Stateless.csproj b/docs/orleans/deployment/snippets/service-fabric/stateless/Orleans.ServiceFabric.Stateless.csproj
index b6c3831b83190..76f3d271ea844 100644
--- a/docs/orleans/deployment/snippets/service-fabric/stateless/Orleans.ServiceFabric.Stateless.csproj
+++ b/docs/orleans/deployment/snippets/service-fabric/stateless/Orleans.ServiceFabric.Stateless.csproj
@@ -14,7 +14,7 @@
-
+
diff --git a/docs/orleans/grains/snippets/transactions/Client/Client.csproj b/docs/orleans/grains/snippets/transactions/Client/Client.csproj
index bc377748da463..5289e9fab5fc3 100644
--- a/docs/orleans/grains/snippets/transactions/Client/Client.csproj
+++ b/docs/orleans/grains/snippets/transactions/Client/Client.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/docs/orleans/grains/snippets/transactions/Server/Server.csproj b/docs/orleans/grains/snippets/transactions/Server/Server.csproj
index 0cadc26e70113..a3d926ddfc935 100644
--- a/docs/orleans/grains/snippets/transactions/Server/Server.csproj
+++ b/docs/orleans/grains/snippets/transactions/Server/Server.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/docs/orleans/streaming/snippets/broadcastchannel/BroadcastChannel.Client/BroadcastChannel.Client.csproj b/docs/orleans/streaming/snippets/broadcastchannel/BroadcastChannel.Client/BroadcastChannel.Client.csproj
index ed73e8ec75eb7..5321e187a44d6 100644
--- a/docs/orleans/streaming/snippets/broadcastchannel/BroadcastChannel.Client/BroadcastChannel.Client.csproj
+++ b/docs/orleans/streaming/snippets/broadcastchannel/BroadcastChannel.Client/BroadcastChannel.Client.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/docs/orleans/streaming/snippets/broadcastchannel/BroadcastChannel.Silo/BroadcastChannel.Silo.csproj b/docs/orleans/streaming/snippets/broadcastchannel/BroadcastChannel.Silo/BroadcastChannel.Silo.csproj
index 60ea20ee5b8c0..cbe9e76e6e6e8 100644
--- a/docs/orleans/streaming/snippets/broadcastchannel/BroadcastChannel.Silo/BroadcastChannel.Silo.csproj
+++ b/docs/orleans/streaming/snippets/broadcastchannel/BroadcastChannel.Silo/BroadcastChannel.Silo.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/docs/orleans/tutorials-and-samples/snippets/minimal/Client/Client.csproj b/docs/orleans/tutorials-and-samples/snippets/minimal/Client/Client.csproj
index 57a1820fed9db..42e4fe89b8149 100644
--- a/docs/orleans/tutorials-and-samples/snippets/minimal/Client/Client.csproj
+++ b/docs/orleans/tutorials-and-samples/snippets/minimal/Client/Client.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/docs/orleans/tutorials-and-samples/snippets/minimal/GrainInterfaces/GrainInterfaces.csproj b/docs/orleans/tutorials-and-samples/snippets/minimal/GrainInterfaces/GrainInterfaces.csproj
index 79e90ccb79670..09879ba973397 100644
--- a/docs/orleans/tutorials-and-samples/snippets/minimal/GrainInterfaces/GrainInterfaces.csproj
+++ b/docs/orleans/tutorials-and-samples/snippets/minimal/GrainInterfaces/GrainInterfaces.csproj
@@ -7,7 +7,7 @@
-
+
diff --git a/docs/orleans/tutorials-and-samples/snippets/minimal/Grains/Grains.csproj b/docs/orleans/tutorials-and-samples/snippets/minimal/Grains/Grains.csproj
index 3a3f52ab93dfe..69fb8f9888bb9 100644
--- a/docs/orleans/tutorials-and-samples/snippets/minimal/Grains/Grains.csproj
+++ b/docs/orleans/tutorials-and-samples/snippets/minimal/Grains/Grains.csproj
@@ -8,7 +8,7 @@
-
+
diff --git a/docs/orleans/tutorials-and-samples/snippets/minimal/Silo/Silo.csproj b/docs/orleans/tutorials-and-samples/snippets/minimal/Silo/Silo.csproj
index 342918053f0f5..3a453f7be9d44 100644
--- a/docs/orleans/tutorials-and-samples/snippets/minimal/Silo/Silo.csproj
+++ b/docs/orleans/tutorials-and-samples/snippets/minimal/Silo/Silo.csproj
@@ -8,9 +8,9 @@
-
-
-
+
+
+
diff --git a/docs/standard/exceptions/best-practices-for-exceptions.md b/docs/standard/exceptions/best-practices-for-exceptions.md
index ef8bd341eef45..eab06b99a2329 100644
--- a/docs/standard/exceptions/best-practices-for-exceptions.md
+++ b/docs/standard/exceptions/best-practices-for-exceptions.md
@@ -60,7 +60,7 @@ If the performance cost of exceptions is prohibitive, some .NET library methods
It's better to catch instead of , which derives from `OperationCanceledException`, when you call an asynchronous method. Many asynchronous methods throw an exception if cancellation is requested. These exceptions enable execution to be efficiently halted and the callstack to be unwound once a cancellation request is observed.
-Asynchronous methods store exceptions that are thrown during execution in the task they return. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as , are still thrown synchronously. For more information, see [Asynchronous exceptions](../../csharp/asynchronous-programming/index.md#asynchronous-exceptions).
+Asynchronous methods store exceptions that are thrown during execution in the task they return. If an exception is stored into the returned task, that exception will be thrown when the task is awaited. Usage exceptions, such as , are still thrown synchronously. For more information, see [Asynchronous exceptions](../../csharp/asynchronous-programming/index.md#handle-asynchronous-exceptions).
### Design classes so that exceptions can be avoided
diff --git a/samples/snippets/standard/data/sqlite/AggregateFunctionSample/AggregateFunctionSample.csproj b/samples/snippets/standard/data/sqlite/AggregateFunctionSample/AggregateFunctionSample.csproj
index cf777b550e658..94807f5ac7383 100644
--- a/samples/snippets/standard/data/sqlite/AggregateFunctionSample/AggregateFunctionSample.csproj
+++ b/samples/snippets/standard/data/sqlite/AggregateFunctionSample/AggregateFunctionSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/AsyncSample/AsyncSample.csproj b/samples/snippets/standard/data/sqlite/AsyncSample/AsyncSample.csproj
index cf777b550e658..94807f5ac7383 100644
--- a/samples/snippets/standard/data/sqlite/AsyncSample/AsyncSample.csproj
+++ b/samples/snippets/standard/data/sqlite/AsyncSample/AsyncSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/BackupSample/BackupSample.csproj b/samples/snippets/standard/data/sqlite/BackupSample/BackupSample.csproj
index cf777b550e658..94807f5ac7383 100644
--- a/samples/snippets/standard/data/sqlite/BackupSample/BackupSample.csproj
+++ b/samples/snippets/standard/data/sqlite/BackupSample/BackupSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/BatchingSample/BatchingSample.csproj b/samples/snippets/standard/data/sqlite/BatchingSample/BatchingSample.csproj
index cf777b550e658..94807f5ac7383 100644
--- a/samples/snippets/standard/data/sqlite/BatchingSample/BatchingSample.csproj
+++ b/samples/snippets/standard/data/sqlite/BatchingSample/BatchingSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/BulkInsertSample/BulkInsertSample.csproj b/samples/snippets/standard/data/sqlite/BulkInsertSample/BulkInsertSample.csproj
index cf777b550e658..94807f5ac7383 100644
--- a/samples/snippets/standard/data/sqlite/BulkInsertSample/BulkInsertSample.csproj
+++ b/samples/snippets/standard/data/sqlite/BulkInsertSample/BulkInsertSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/CollationSample/CollationSample.csproj b/samples/snippets/standard/data/sqlite/CollationSample/CollationSample.csproj
index cf777b550e658..94807f5ac7383 100644
--- a/samples/snippets/standard/data/sqlite/CollationSample/CollationSample.csproj
+++ b/samples/snippets/standard/data/sqlite/CollationSample/CollationSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/DapperSample/DapperSample.csproj b/samples/snippets/standard/data/sqlite/DapperSample/DapperSample.csproj
index 7a7b510893fa3..e5da1a1b998fd 100644
--- a/samples/snippets/standard/data/sqlite/DapperSample/DapperSample.csproj
+++ b/samples/snippets/standard/data/sqlite/DapperSample/DapperSample.csproj
@@ -8,8 +8,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/DateAndTimeSample/DateAndTimeSample.csproj b/samples/snippets/standard/data/sqlite/DateAndTimeSample/DateAndTimeSample.csproj
index cf777b550e658..94807f5ac7383 100644
--- a/samples/snippets/standard/data/sqlite/DateAndTimeSample/DateAndTimeSample.csproj
+++ b/samples/snippets/standard/data/sqlite/DateAndTimeSample/DateAndTimeSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/DeferredTransactionSample/DeferredTransactionSample.csproj b/samples/snippets/standard/data/sqlite/DeferredTransactionSample/DeferredTransactionSample.csproj
index cf777b550e658..94807f5ac7383 100644
--- a/samples/snippets/standard/data/sqlite/DeferredTransactionSample/DeferredTransactionSample.csproj
+++ b/samples/snippets/standard/data/sqlite/DeferredTransactionSample/DeferredTransactionSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/DirtyReadSample/DirtyReadSample.csproj b/samples/snippets/standard/data/sqlite/DirtyReadSample/DirtyReadSample.csproj
index cf777b550e658..94807f5ac7383 100644
--- a/samples/snippets/standard/data/sqlite/DirtyReadSample/DirtyReadSample.csproj
+++ b/samples/snippets/standard/data/sqlite/DirtyReadSample/DirtyReadSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/EncryptionSample/EncryptionSample.csproj b/samples/snippets/standard/data/sqlite/EncryptionSample/EncryptionSample.csproj
index 3e436193ac3af..210c9795deab3 100644
--- a/samples/snippets/standard/data/sqlite/EncryptionSample/EncryptionSample.csproj
+++ b/samples/snippets/standard/data/sqlite/EncryptionSample/EncryptionSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/ExtensionsSample/ExtensionsSample.csproj b/samples/snippets/standard/data/sqlite/ExtensionsSample/ExtensionsSample.csproj
index 8ae7ad6f0b0c2..2b025f9f8035e 100644
--- a/samples/snippets/standard/data/sqlite/ExtensionsSample/ExtensionsSample.csproj
+++ b/samples/snippets/standard/data/sqlite/ExtensionsSample/ExtensionsSample.csproj
@@ -7,11 +7,11 @@
-
+
-
+
-
+
diff --git a/samples/snippets/standard/data/sqlite/HelloWorldSample/HelloWorldSample.csproj b/samples/snippets/standard/data/sqlite/HelloWorldSample/HelloWorldSample.csproj
index cf777b550e658..94807f5ac7383 100644
--- a/samples/snippets/standard/data/sqlite/HelloWorldSample/HelloWorldSample.csproj
+++ b/samples/snippets/standard/data/sqlite/HelloWorldSample/HelloWorldSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/InteropSample/InteropSample.csproj b/samples/snippets/standard/data/sqlite/InteropSample/InteropSample.csproj
index cf777b550e658..94807f5ac7383 100644
--- a/samples/snippets/standard/data/sqlite/InteropSample/InteropSample.csproj
+++ b/samples/snippets/standard/data/sqlite/InteropSample/InteropSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/RegularExpressionSample/RegularExpressionSample.csproj b/samples/snippets/standard/data/sqlite/RegularExpressionSample/RegularExpressionSample.csproj
index cf777b550e658..94807f5ac7383 100644
--- a/samples/snippets/standard/data/sqlite/RegularExpressionSample/RegularExpressionSample.csproj
+++ b/samples/snippets/standard/data/sqlite/RegularExpressionSample/RegularExpressionSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/ResultMetadataSample/ResultMetadataSample.csproj b/samples/snippets/standard/data/sqlite/ResultMetadataSample/ResultMetadataSample.csproj
index cf777b550e658..94807f5ac7383 100644
--- a/samples/snippets/standard/data/sqlite/ResultMetadataSample/ResultMetadataSample.csproj
+++ b/samples/snippets/standard/data/sqlite/ResultMetadataSample/ResultMetadataSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/SavepointSample/SavepointSample.csproj b/samples/snippets/standard/data/sqlite/SavepointSample/SavepointSample.csproj
index cf777b550e658..94807f5ac7383 100644
--- a/samples/snippets/standard/data/sqlite/SavepointSample/SavepointSample.csproj
+++ b/samples/snippets/standard/data/sqlite/SavepointSample/SavepointSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/ScalarFunctionSample/ScalarFunctionSample.csproj b/samples/snippets/standard/data/sqlite/ScalarFunctionSample/ScalarFunctionSample.csproj
index cf777b550e658..94807f5ac7383 100644
--- a/samples/snippets/standard/data/sqlite/ScalarFunctionSample/ScalarFunctionSample.csproj
+++ b/samples/snippets/standard/data/sqlite/ScalarFunctionSample/ScalarFunctionSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/SqliteProviderSample/SqliteProviderSample.csproj b/samples/snippets/standard/data/sqlite/SqliteProviderSample/SqliteProviderSample.csproj
index 49488658200ce..6dc375519b0ee 100644
--- a/samples/snippets/standard/data/sqlite/SqliteProviderSample/SqliteProviderSample.csproj
+++ b/samples/snippets/standard/data/sqlite/SqliteProviderSample/SqliteProviderSample.csproj
@@ -7,9 +7,9 @@
-
-
-
+
+
+
diff --git a/samples/snippets/standard/data/sqlite/StreamingSample/StreamingSample.csproj b/samples/snippets/standard/data/sqlite/StreamingSample/StreamingSample.csproj
index e5fb3228bb7ff..029b5487968f6 100644
--- a/samples/snippets/standard/data/sqlite/StreamingSample/StreamingSample.csproj
+++ b/samples/snippets/standard/data/sqlite/StreamingSample/StreamingSample.csproj
@@ -7,8 +7,8 @@
-
-
+
+
diff --git a/samples/snippets/standard/data/sqlite/SystemLibrarySample/SystemLibrarySample.csproj b/samples/snippets/standard/data/sqlite/SystemLibrarySample/SystemLibrarySample.csproj
index f8d8130ae21d2..68d358c48e34b 100644
--- a/samples/snippets/standard/data/sqlite/SystemLibrarySample/SystemLibrarySample.csproj
+++ b/samples/snippets/standard/data/sqlite/SystemLibrarySample/SystemLibrarySample.csproj
@@ -7,8 +7,8 @@
-
-
+
+