diff --git a/docs/ai/ai-extensions.md b/docs/ai/ai-extensions.md index 62afd7f8ac982..c6823a5b9f340 100644 --- a/docs/ai/ai-extensions.md +++ b/docs/ai/ai-extensions.md @@ -99,5 +99,5 @@ For an end-to-end sample using `Microsoft.Extensions.AI`, see [eShopSupport](htt ## Next steps -- [Build an AI chat app with .NET](/dotnet/ai/quickstarts/build-chat-app) -- [Quickstart - Summarize text using Azure AI chat app with .NET](/dotnet/ai/quickstarts/prompt-model) +- [Build an AI chat app with .NET](quickstarts/build-chat-app.md) +- [Quickstart - Summarize text using Azure AI chat app with .NET](quickstarts/prompt-model.md) diff --git a/docs/ai/azure-ai-services-authentication.md b/docs/ai/azure-ai-services-authentication.md index 2ee985293b04c..675ab9e0a03ea 100644 --- a/docs/ai/azure-ai-services-authentication.md +++ b/docs/ai/azure-ai-services-authentication.md @@ -15,7 +15,7 @@ Application requests to Azure AI Services must be authenticated. In this article The sections ahead provide conceptual overviews for these two approaches, rather than detailed implementation steps. For more detailed information about connecting to Azure services, visit the following resources: -- [Authenticate .NET apps to Azure services](/dotnet/azure/sdk/authentication/) +- [Authenticate .NET apps to Azure services](../azure/sdk/authentication/index.md) - [Identity fundamentals](/entra/fundamentals/identity-fundamental-concepts) - [What is Azure RBAC?](/azure/role-based-access-control/overview) diff --git a/docs/ai/dotnet-ai-ecosystem.md b/docs/ai/dotnet-ai-ecosystem.md index a44f61c27f90f..4e7b6db204328 100644 --- a/docs/ai/dotnet-ai-ecosystem.md +++ b/docs/ai/dotnet-ai-ecosystem.md @@ -63,7 +63,7 @@ Azure offers many other AI services to build specific application capabilities a .NET apps can also connect to local AI models for many different development scenarios. [Semantic Kernel](https://github.com/microsoft/semantic-kernel) is the recommended tool to connect to local models using .NET. Semantic Kernel can connect to many different models hosted across a variety of platforms and abstracts away lower-level implementation details. -For example, you can use [Ollama](https://ollama.com/) to [connect to local AI models with .NET](/dotnet/ai/quickstarts/chat-local-model), including several small language models (SLMs) developed by Microsoft: +For example, you can use [Ollama](https://ollama.com/) to [connect to local AI models with .NET](quickstarts/chat-local-model.md), including several small language models (SLMs) developed by Microsoft: | Model | Description | |---------------------|-----------------------------------------------------------| @@ -84,7 +84,7 @@ This article summarized the tools and SDKs in the .NET ecosystem, with a focus o ## Next steps - [What is Semantic Kernel?](/semantic-kernel/overview/) -- [Quickstart - Summarize text using Azure AI chat app with .NET](/dotnet/ai/quickstarts/prompt-model) +- [Quickstart - Summarize text using Azure AI chat app with .NET](quickstarts/prompt-model.md) [phi3]: https://azure.microsoft.com/products/phi-3 [orca]: https://www.microsoft.com/research/project/orca/ diff --git a/docs/ai/get-started/dotnet-ai-overview.md b/docs/ai/get-started/dotnet-ai-overview.md index a7d756756c414..2e66e64af2e08 100644 --- a/docs/ai/get-started/dotnet-ai-overview.md +++ b/docs/ai/get-started/dotnet-ai-overview.md @@ -36,16 +36,16 @@ We recommend the following sequence of tutorials and articles for an introductio | Scenario | Tutorial | |----------|----------| -| Create a chat application | [Build an Azure AI chat app with .NET](/dotnet/ai/quickstarts/build-chat-app)| -| Summarize text | [Summarize text using Azure AI chat app with .NET](/dotnet/ai/quickstarts/prompt-model) | -| Chat with your data | [Get insight about your data from an .NET Azure AI chat app](/dotnet/ai/quickstarts/build-vector-search-app) | -| Call .NET functions with AI | [Extend Azure AI using tools and execute a local function with .NET](/dotnet/ai/quickstarts/use-function-calling) | -| Generate images | [Generate images using Azure AI with .NET](/dotnet/ai/quickstarts/generate-images) | +| Create a chat application | [Build an Azure AI chat app with .NET](../quickstarts/build-chat-app.md)| +| Summarize text | [Summarize text using Azure AI chat app with .NET](../quickstarts/prompt-model.md) | +| Chat with your data | [Get insight about your data from an .NET Azure AI chat app](../quickstarts/build-vector-search-app.md) | +| Call .NET functions with AI | [Extend Azure AI using tools and execute a local function with .NET](../quickstarts/use-function-calling.md) | +| Generate images | [Generate images using Azure AI with .NET](../quickstarts/generate-images.md) | | Train your own model |[ML.NET tutorial](https://dotnet.microsoft.com/learn/ml-dotnet/get-started-tutorial/intro) | Browse the table of contents to learn more about the core concepts, starting with [How generative AI and LLMs work](../conceptual/how-genai-and-llms-work.md). ## Next steps -- [Quickstart: Build an Azure AI chat app with .NET](/dotnet/ai/quickstarts/build-chat-app) +- [Quickstart: Build an Azure AI chat app with .NET](../quickstarts/build-chat-app.md) - [Video series: Machine Learning and AI with .NET](/shows/machine-learning-and-ai-with-dotnet-for-beginners) diff --git a/docs/ai/how-to/content-filtering.md b/docs/ai/how-to/content-filtering.md index 7578093e2b261..53b250853cf52 100644 --- a/docs/ai/how-to/content-filtering.md +++ b/docs/ai/how-to/content-filtering.md @@ -49,4 +49,4 @@ The response was filtered due to the prompt triggering Azure OpenAI's content ma * [Create and assign a content filter](/azure/ai-services/openai/how-to/content-filters) * [Content Filtering concepts](/azure/ai-services/openai/concepts/content-filter) -* [Create a chat app](/dotnet/ai/quickstarts/prompt-model) +* [Create a chat app](../quickstarts/prompt-model.md) diff --git a/docs/ai/quickstarts/build-chat-app.md b/docs/ai/quickstarts/build-chat-app.md index ed45ee1acee43..a91466c0f7d17 100644 --- a/docs/ai/quickstarts/build-chat-app.md +++ b/docs/ai/quickstarts/build-chat-app.md @@ -153,5 +153,5 @@ azd down ## Next steps -- [Quickstart - Chat with a local AI model](/dotnet/ai/quickstarts/chat-local-model) -- [Generate images using AI with .NET](/dotnet/ai/quickstarts/generate-images) +- [Quickstart - Chat with a local AI model](chat-local-model.md) +- [Generate images using AI with .NET](generate-images.md) diff --git a/docs/ai/quickstarts/build-vector-search-app.md b/docs/ai/quickstarts/build-vector-search-app.md index 0f848e2f70083..aad9733791025 100644 --- a/docs/ai/quickstarts/build-vector-search-app.md +++ b/docs/ai/quickstarts/build-vector-search-app.md @@ -205,5 +205,5 @@ azd down ## Next steps -- [Quickstart - Chat with a local AI model](/dotnet/ai/quickstarts/chat-local-model) -- [Generate images using AI with .NET](/dotnet/ai/quickstarts/generate-images) +- [Quickstart - Chat with a local AI model](chat-local-model.md) +- [Generate images using AI with .NET](generate-images.md) diff --git a/docs/ai/quickstarts/generate-images.md b/docs/ai/quickstarts/generate-images.md index 14616350f68c9..36cdb44c0d38f 100644 --- a/docs/ai/quickstarts/generate-images.md +++ b/docs/ai/quickstarts/generate-images.md @@ -105,7 +105,7 @@ Complete the following steps to create a .NET console app to connect to an AI mo :::code language="csharp" source="snippets/image-generation/azure-openai/program.cs" ::: > [!NOTE] - > searches for authentication credentials from your local tooling. If you aren't using the `azd` template to provision the Azure OpenAI resource, you'll need to assign the `Azure AI Developer` role to the account you used to sign-in to Visual Studio or the Azure CLI. For more information, see [Authenticate to Azure AI services with .NET](/dotnet/ai/azure-ai-services-authentication). + > searches for authentication credentials from your local tooling. If you aren't using the `azd` template to provision the Azure OpenAI resource, you'll need to assign the `Azure AI Developer` role to the account you used to sign-in to Visual Studio or the Azure CLI. For more information, see [Authenticate to Azure AI services with .NET](../azure-ai-services-authentication.md). :::zone-end @@ -144,5 +144,5 @@ azd down ## Next steps -- [Quickstart - Build an AI chat app with .NET](/dotnet/ai/quickstarts/build-chat-app) +- [Quickstart - Build an AI chat app with .NET](build-chat-app.md) - [Generate text and conversations with .NET and Azure OpenAI Completions](/training/modules/open-ai-dotnet-text-completions/) diff --git a/docs/ai/quickstarts/prompt-model.md b/docs/ai/quickstarts/prompt-model.md index 76982282aefe2..63395e28f7ae1 100644 --- a/docs/ai/quickstarts/prompt-model.md +++ b/docs/ai/quickstarts/prompt-model.md @@ -113,7 +113,7 @@ The app uses the [`Microsoft.Extensions.AI`](https://www.nuget.org/packages/Micr :::code language="csharp" source="snippets/prompt-completion/azure-openai/program.cs" range="1-12"::: > [!NOTE] - > searches for authentication credentials from your local tooling. If you aren't using the `azd` template to provision the Azure OpenAI resource, you'll need to assign the `Azure AI Developer` role to the account you used to sign-in to Visual Studio or the Azure CLI. For more information, see [Authenticate to Azure AI services with .NET](/dotnet/ai/azure-ai-services-authentication). + > searches for authentication credentials from your local tooling. If you aren't using the `azd` template to provision the Azure OpenAI resource, you'll need to assign the `Azure AI Developer` role to the account you used to sign-in to Visual Studio or the Azure CLI. For more information, see [Authenticate to Azure AI services with .NET](../azure-ai-services-authentication.md). :::zone-end @@ -153,5 +153,5 @@ azd down ## Next steps -- [Quickstart - Build an AI chat app with .NET](/dotnet/ai/quickstarts/build-chat-app) +- [Quickstart - Build an AI chat app with .NET](build-chat-app.md) - [Generate text and conversations with .NET and Azure OpenAI Completions](/training/modules/open-ai-dotnet-text-completions/) diff --git a/docs/ai/quickstarts/use-function-calling.md b/docs/ai/quickstarts/use-function-calling.md index 060630ca79cdf..6082725a210a0 100644 --- a/docs/ai/quickstarts/use-function-calling.md +++ b/docs/ai/quickstarts/use-function-calling.md @@ -154,5 +154,5 @@ azd down ## Next steps -- [Quickstart - Build an AI chat app with .NET](/dotnet/ai/quickstarts/build-chat-app) +- [Quickstart - Build an AI chat app with .NET](build-chat-app.md) - [Generate text and conversations with .NET and Azure OpenAI Completions](/training/modules/open-ai-dotnet-text-completions/) diff --git a/docs/ai/semantic-kernel-dotnet-overview.md b/docs/ai/semantic-kernel-dotnet-overview.md index 94eff8d840040..ca4d1ed9e7750 100644 --- a/docs/ai/semantic-kernel-dotnet-overview.md +++ b/docs/ai/semantic-kernel-dotnet-overview.md @@ -213,5 +213,5 @@ foreach (var fact in facts) { The preceding code loads a set of facts into memory so that the data is available to use when interacting with AI models and orchestrating tasks. >[!div class="step-by-step"] ->[Quickstart - Summarize text with OpenAI](/dotnet/ai/quickstarts/prompt-model) ->[Quickstart - Chat with your data](/dotnet/ai/quickstarts/build-vector-search-app) +>[Quickstart - Summarize text with OpenAI](quickstarts/prompt-model.md) +>[Quickstart - Chat with your data](quickstarts/build-vector-search-app.md) diff --git a/docs/azure/sdk/includes/auth-visual-studio.md b/docs/azure/sdk/includes/auth-visual-studio.md index bcf443f89a07a..753d3583f42ee 100644 --- a/docs/azure/sdk/includes/auth-visual-studio.md +++ b/docs/azure/sdk/includes/auth-visual-studio.md @@ -6,7 +6,7 @@ ms.date: 03/19/2025 Developers using Visual Studio 2017 or later can authenticate using their developer account through the IDE. Apps using or can discover and use this account to authenticate app requests when running locally. This account is also used when you publish apps directly from Visual Studio to Azure. > [!IMPORTANT] -> You'll need to [install the **Azure development** workload](/dotnet/azure/configure-visual-studio#install-azure-workloads) to enable Visual Studio tooling for Azure authentication, development, and deployment. +> You'll need to [install the **Azure development** workload](../../configure-visual-studio.md#install-azure-workloads) to enable Visual Studio tooling for Azure authentication, development, and deployment. 1. Inside Visual Studio, navigate to **Tools** > **Options** to open the options dialog. 1. In the **Search Options** box at the top, type *Azure* to filter the available options. diff --git a/docs/core/compatibility/windows-forms/10.0/menuitem-contextmenu.md b/docs/core/compatibility/windows-forms/10.0/menuitem-contextmenu.md index 64d11c43e7350..55f5989660024 100644 --- a/docs/core/compatibility/windows-forms/10.0/menuitem-contextmenu.md +++ b/docs/core/compatibility/windows-forms/10.0/menuitem-contextmenu.md @@ -48,7 +48,7 @@ Use aliases to resolve conflicting namespaces. For example: 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. +Refer to the [alias name conflicts documentation](../../../../csharp/language-reference/compiler-messages/using-directive-errors.md#alias-name-conflicts) for more details. ## Affected APIs diff --git a/docs/core/deploying/deploy-with-cli.md b/docs/core/deploying/deploy-with-cli.md index c8f27597ff567..0cccaf1591397 100644 --- a/docs/core/deploying/deploy-with-cli.md +++ b/docs/core/deploying/deploy-with-cli.md @@ -166,7 +166,7 @@ You must use the following switches with the `dotnet publish` command to publish > [!TIP] > -> - In .NET 6 and later versions, you can reduce the total size of compatible self-contained apps by [publishing trimmed](trimming/trim-self-contained.md). This enables the trimmer to remove parts of the framework and referenced assemblies that are not on any code path or potentially referenced in [runtime reflection](/dotnet/csharp/advanced-topics/reflection-and-attributes/). See [trimming incompatibilities](./trimming/incompatibilities.md) to determine if trimming makes sense for your application. +> - In .NET 6 and later versions, you can reduce the total size of compatible self-contained apps by [publishing trimmed](trimming/trim-self-contained.md). This enables the trimmer to remove parts of the framework and referenced assemblies that are not on any code path or potentially referenced in [runtime reflection](../../csharp/advanced-topics/reflection-and-attributes/index.md). See [trimming incompatibilities](./trimming/incompatibilities.md) to determine if trimming makes sense for your application. > - You can reduce the total size of your deployment by enabling **globalization invariant mode**. This mode is useful for applications that are not globally aware and that can use the formatting conventions, casing conventions, and string comparison and sort order of the [invariant culture](xref:System.Globalization.CultureInfo.InvariantCulture). For more information about **globalization invariant mode** and how to enable it, see [.NET Core Globalization Invariant Mode](https://github.com/dotnet/runtime/blob/main/docs/design/features/globalization-invariant-mode.md). ## See also diff --git a/docs/core/extensions/artificial-intelligence.md b/docs/core/extensions/artificial-intelligence.md index 1a5ea49818d8d..50ce8c7d21bcf 100644 --- a/docs/core/extensions/artificial-intelligence.md +++ b/docs/core/extensions/artificial-intelligence.md @@ -267,7 +267,7 @@ In this way, the `RateLimitingEmbeddingGenerator` can be composed with other `IE - [Develop .NET applications with AI features](../../ai/get-started/dotnet-ai-overview.md) - [Unified AI building blocks for .NET using Microsoft.Extensions.AI](../../ai/ai-extensions.md) -- [Build an AI chat app with .NET](/dotnet/ai/quickstarts/build-chat-app) +- [Build an AI chat app with .NET](../../ai/quickstarts/build-chat-app.md) - [.NET dependency injection](dependency-injection.md) - [Rate limit an HTTP handler in .NET](http-ratelimiter.md) - [.NET Generic Host](generic-host.md) diff --git a/docs/csharp/advanced-topics/expression-trees/index.md b/docs/csharp/advanced-topics/expression-trees/index.md index 602b3df9e0bbd..35a0cac9c0521 100644 --- a/docs/csharp/advanced-topics/expression-trees/index.md +++ b/docs/csharp/advanced-topics/expression-trees/index.md @@ -8,7 +8,7 @@ ms.custom: updateeachrelease *Expression trees* represent code in a tree-like data structure, where each node is an expression, for example, a method call or a binary operation such as `x < y`. -If you used LINQ, you have experience with a rich library where the `Func` types are part of the API set. (If you aren't familiar with LINQ, you probably want to read [the LINQ tutorial](/dotnet/csharp/linq/) and the article about [lambda expressions](../../language-reference/operators/lambda-expressions.md) before this one.) Expression Trees provide richer interaction with the arguments that are functions. +If you used LINQ, you have experience with a rich library where the `Func` types are part of the API set. (If you aren't familiar with LINQ, you probably want to read [the LINQ tutorial](../../linq/index.md) and the article about [lambda expressions](../../language-reference/operators/lambda-expressions.md) before this one.) Expression Trees provide richer interaction with the arguments that are functions. You write function arguments, typically using Lambda Expressions, when you create LINQ queries. In a typical LINQ query, those function arguments are transformed into a delegate the compiler creates. diff --git a/docs/csharp/fundamentals/program-structure/main-command-line.md b/docs/csharp/fundamentals/program-structure/main-command-line.md index 0e1d116b8c9bc..ffa27d3a4ce17 100644 --- a/docs/csharp/fundamentals/program-structure/main-command-line.md +++ b/docs/csharp/fundamentals/program-structure/main-command-line.md @@ -200,7 +200,7 @@ long num = Convert.ToInt64(s); For more information, see and . > [!TIP] -> Parsing command-line arguments can be complex. Consider using the [System.CommandLine](/dotnet/standard/commandline/) library (currently in beta) to simplify the process. +> Parsing command-line arguments can be complex. Consider using the [System.CommandLine](../../../standard/commandline/index.md) library (currently in beta) to simplify the process. The following example shows how to use command-line arguments in a console application. The application takes one argument at run time, converts the argument to an integer, and calculates the factorial of the number. If no arguments are supplied, the application issues a message that explains the correct usage of the program. diff --git a/docs/csharp/how-to/concatenate-multiple-strings.md b/docs/csharp/how-to/concatenate-multiple-strings.md index e5dd559e2324e..d72c3ed59f97d 100644 --- a/docs/csharp/how-to/concatenate-multiple-strings.md +++ b/docs/csharp/how-to/concatenate-multiple-strings.md @@ -61,7 +61,7 @@ Another option to join strings from a collection is to use method to join strings from a collection. This method combines the source strings using a lambda expression. The lambda expression does the work to add each string to the existing accumulation. The following example diff --git a/docs/csharp/how-to/parse-strings-using-split.md b/docs/csharp/how-to/parse-strings-using-split.md index e2bc6c21c4532..418e6336312d2 100644 --- a/docs/csharp/how-to/parse-strings-using-split.md +++ b/docs/csharp/how-to/parse-strings-using-split.md @@ -67,7 +67,7 @@ Consecutive separator characters produce the empty string as a value in the retu This behavior makes it easier for formats like comma-separated values (CSV) files representing tabular data. Consecutive commas represent a blank column. -You can pass an optional parameter to exclude any empty strings in the returned array. For more complicated processing of the returned collection, you can use [LINQ](/dotnet/csharp/linq/) to manipulate the result sequence. +You can pass an optional parameter to exclude any empty strings in the returned array. For more complicated processing of the returned collection, you can use [LINQ](../linq/index.md) to manipulate the result sequence. ## Trim whitespace diff --git a/docs/csharp/language-reference/attributes/general.md b/docs/csharp/language-reference/attributes/general.md index ac263c67eac6d..00c1a14c18e36 100644 --- a/docs/csharp/language-reference/attributes/general.md +++ b/docs/csharp/language-reference/attributes/general.md @@ -274,4 +274,4 @@ The - - [Attributes](../../../standard/attributes/index.md) -- [Reflection](/dotnet/csharp/advanced-topics/reflection-and-attributes/) +- [Reflection](../../advanced-topics/reflection-and-attributes/index.md) diff --git a/docs/csharp/language-reference/keywords/join-clause.md b/docs/csharp/language-reference/keywords/join-clause.md index 9c5737b35fa5b..fc0433d3f96e8 100644 --- a/docs/csharp/language-reference/keywords/join-clause.md +++ b/docs/csharp/language-reference/keywords/join-clause.md @@ -62,7 +62,7 @@ A `join` clause performs an equijoin. In other words, you can only base matches ## Non-equijoins -You can perform non-equijoins, cross joins, and other custom join operations by using multiple `from` clauses to introduce new sequences independently into a query. For more information, see [Perform custom join operations](/dotnet/csharp/linq/). +You can perform non-equijoins, cross joins, and other custom join operations by using multiple `from` clauses to introduce new sequences independently into a query. For more information, see [Perform custom join operations](../../linq/index.md). ## Joins on object collections vs. relational tables diff --git a/docs/csharp/language-reference/keywords/let-clause.md b/docs/csharp/language-reference/keywords/let-clause.md index 99c26892e160d..f20a52cd33deb 100644 --- a/docs/csharp/language-reference/keywords/let-clause.md +++ b/docs/csharp/language-reference/keywords/let-clause.md @@ -28,5 +28,5 @@ In the following example `let` is used in two ways: - [Query Keywords (LINQ)](query-keywords.md) - [LINQ in C#](../../linq/index.md) -- [Language Integrated Query (LINQ)](/dotnet/csharp/linq/) +- [Language Integrated Query (LINQ)](../../linq/index.md) - [Handle exceptions in query expressions](../../linq/get-started/write-linq-queries.md) diff --git a/docs/csharp/language-reference/keywords/orderby-clause.md b/docs/csharp/language-reference/keywords/orderby-clause.md index 7778b6a643056..f55a8bd904048 100644 --- a/docs/csharp/language-reference/keywords/orderby-clause.md +++ b/docs/csharp/language-reference/keywords/orderby-clause.md @@ -35,4 +35,4 @@ At compile time, the `orderby` clause is translated to a call to the ` token is supported in two forms: as the [lambda operator](#lambda-opera In [lambda expressions](lambda-expressions.md), the lambda operator `=>` separates the input parameters on the left side from the lambda body on the right side. -The following example uses the [LINQ](/dotnet/csharp/linq/) feature with method syntax to demonstrate the usage of lambda expressions: +The following example uses the [LINQ](../../linq/index.md) feature with method syntax to demonstrate the usage of lambda expressions: :::code language="csharp" interactive="try-dotnet-method" source="snippets/shared/LambdaOperator.cs" id="InferredTypes"::: diff --git a/docs/csharp/programming-guide/classes-and-structs/how-to-implement-and-call-a-custom-extension-method.md b/docs/csharp/programming-guide/classes-and-structs/how-to-implement-and-call-a-custom-extension-method.md index 837a1a2376c4a..a4e274ea04933 100644 --- a/docs/csharp/programming-guide/classes-and-structs/how-to-implement-and-call-a-custom-extension-method.md +++ b/docs/csharp/programming-guide/classes-and-structs/how-to-implement-and-call-a-custom-extension-method.md @@ -31,7 +31,7 @@ Overload resolution prefers instance or static method defined by the type itself ## See also - [Extension Methods](./extension-methods.md) -- [LINQ (Language-Integrated Query)](/dotnet/csharp/linq/) +- [LINQ (Language-Integrated Query)](../../linq/index.md) - [Static Classes and Static Class Members](./static-classes-and-static-class-members.md) - [protected](../../language-reference/keywords/protected.md) - [internal](../../language-reference/keywords/internal.md) diff --git a/docs/csharp/tutorials/working-with-linq.md b/docs/csharp/tutorials/working-with-linq.md index 1d9dfb0f9d36b..68f700d45b431 100644 --- a/docs/csharp/tutorials/working-with-linq.md +++ b/docs/csharp/tutorials/working-with-linq.md @@ -345,7 +345,7 @@ Aside from LINQ, you learned a bit about a technique magicians use for card tric For more information on LINQ, see: -- [Introduction to LINQ](/dotnet/csharp/linq/) +- [Introduction to LINQ](../linq/index.md) - [Basic LINQ Query Operations (C#)](../linq/standard-query-operators/index.md) - [Data Transformations With LINQ (C#)](../linq/standard-query-operators/index.md) - [Query Syntax and Method Syntax in LINQ (C#)](../linq/get-started/write-linq-queries.md) diff --git a/docs/framework/data/adonet/ef/language-reference/linq-to-entities.md b/docs/framework/data/adonet/ef/language-reference/linq-to-entities.md index 9fcd1e838fc00..f0edf88b2ff73 100644 --- a/docs/framework/data/adonet/ef/language-reference/linq-to-entities.md +++ b/docs/framework/data/adonet/ef/language-reference/linq-to-entities.md @@ -93,7 +93,7 @@ LINQ to Entities provides Language-Integrated Query (LINQ) support that enables ## See also - [Known Issues and Considerations in LINQ to Entities](known-issues-and-considerations-in-linq-to-entities.md) -- [Language-Integrated Query (LINQ) - C#](/dotnet/csharp/linq/) +- [Language-Integrated Query (LINQ) - C#](../../../../../csharp/linq/index.md) - [Language-Integrated Query (LINQ) - Visual Basic](../../../../../visual-basic/programming-guide/concepts/linq/index.md) - [LINQ and ADO.NET](../../linq-and-ado-net.md) - [ADO.NET Entity Framework](../index.md) diff --git a/docs/framework/data/adonet/ef/language-reference/queries-in-linq-to-entities.md b/docs/framework/data/adonet/ef/language-reference/queries-in-linq-to-entities.md index 6ba4375354851..fc66db222e839 100644 --- a/docs/framework/data/adonet/ef/language-reference/queries-in-linq-to-entities.md +++ b/docs/framework/data/adonet/ef/language-reference/queries-in-linq-to-entities.md @@ -67,6 +67,6 @@ A query is an expression that retrieves data from a data source. Queries are usu ## See also - [LINQ to Entities](linq-to-entities.md) -- [Getting Started with LINQ in C#](/dotnet/csharp/linq/) +- [Getting Started with LINQ in C#](../../../../../csharp/linq/index.md) - [Getting Started with LINQ in Visual Basic](../../../../../visual-basic/programming-guide/concepts/linq/getting-started-with-linq.md) - [EF Merge Options and Compiled Queries](/archive/blogs/dsimmons/ef-merge-options-and-compiled-queries) diff --git a/docs/framework/data/adonet/getting-started-linq-to-dataset.md b/docs/framework/data/adonet/getting-started-linq-to-dataset.md index ef8ff33f9476e..8f00ef83fcb65 100644 --- a/docs/framework/data/adonet/getting-started-linq-to-dataset.md +++ b/docs/framework/data/adonet/getting-started-linq-to-dataset.md @@ -33,5 +33,5 @@ This section provides introductory information about programming with LINQ to Da ## See also - [LINQ and ADO.NET](linq-and-ado-net.md) -- [Language-Integrated Query (LINQ) - C#](/dotnet/csharp/linq/) +- [Language-Integrated Query (LINQ) - C#](../../../csharp/linq/index.md) - [Language-Integrated Query (LINQ) - Visual Basic](../../../visual-basic/programming-guide/concepts/linq/index.md) diff --git a/docs/framework/data/adonet/index.md b/docs/framework/data/adonet/index.md index 870c6af12e181..4716aa639d8e6 100644 --- a/docs/framework/data/adonet/index.md +++ b/docs/framework/data/adonet/index.md @@ -43,7 +43,7 @@ ADO.NET is a set of classes that expose data access services for .NET Framework ## Related Sections - [Language-Integrated Query (LINQ) - C#](/dotnet/csharp/linq/)\ + [Language-Integrated Query (LINQ) - C#](../../../csharp/linq/index.md)\ Provides links to LINQ topics and samples using C#. [Language-Integrated Query (LINQ) - Visual Basic](../../../visual-basic/programming-guide/concepts/linq/index.md)\ diff --git a/docs/framework/data/adonet/linq-and-ado-net.md b/docs/framework/data/adonet/linq-and-ado-net.md index d0e08169c58fa..14631ea13e210 100644 --- a/docs/framework/data/adonet/linq-and-ado-net.md +++ b/docs/framework/data/adonet/linq-and-ado-net.md @@ -19,7 +19,7 @@ Today, many business developers must use two (or more) programming languages: a ![LINQ to ADO.NET overview](./media/dpue-linqtoadonetoverview-bpuedev11.gif "DPUE_LinqToAdoNetOverview_bpuedev11") - For more information about LINQ, see [Language Integrated Query (LINQ)](/dotnet/csharp/linq/). + For more information about LINQ, see [Language Integrated Query (LINQ)](../../../csharp/linq/index.md). The following sections provide more information about LINQ to DataSet, [!INCLUDE[vbtecdlinq](../../../../includes/vbtecdlinq-md.md)], and LINQ to Entities. @@ -44,5 +44,5 @@ Today, many business developers must use two (or more) programming languages: a - [LINQ to DataSet](linq-to-dataset.md) - [LINQ to SQL](./sql/linq/index.md) - [LINQ to Entities](./ef/language-reference/linq-to-entities.md) -- [Language Integrated Query (LINQ)](/dotnet/csharp/linq/) +- [Language Integrated Query (LINQ)](../../../csharp/linq/index.md) - [ADO.NET Overview](ado-net-overview.md) diff --git a/docs/framework/data/adonet/linq-to-dataset-overview.md b/docs/framework/data/adonet/linq-to-dataset-overview.md index cd580cc9c510b..530bdb592932d 100644 --- a/docs/framework/data/adonet/linq-to-dataset-overview.md +++ b/docs/framework/data/adonet/linq-to-dataset-overview.md @@ -29,6 +29,6 @@ The is one of the more widely used components of ADO. ## See also - [Querying DataSets](querying-datasets-linq-to-dataset.md) -- [Language-Integrated Query (LINQ) - C#](/dotnet/csharp/linq/) +- [Language-Integrated Query (LINQ) - C#](../../../csharp/linq/index.md) - [Language-Integrated Query (LINQ) - Visual Basic](../../../visual-basic/programming-guide/concepts/linq/index.md) - [LINQ to SQL](./sql/linq/index.md) diff --git a/docs/framework/data/adonet/linq-to-dataset.md b/docs/framework/data/adonet/linq-to-dataset.md index 8aef752ab0c1a..b09dc1a8e2719 100644 --- a/docs/framework/data/adonet/linq-to-dataset.md +++ b/docs/framework/data/adonet/linq-to-dataset.md @@ -30,7 +30,7 @@ LINQ to DataSet makes it easier and faster to query over data cached in a switch has machine scope; that is, it affects every application running on the machine. -For ASP.NET and ASP.NET Core applications, you set a switch by adding an [\](../../framework/configure-apps/file-schema/appsettings/add-element-for-appsettings.md) element to the [\](/dotnet/framework/configure-apps/file-schema/appsettings/) section of the web.config file. For example: +For ASP.NET and ASP.NET Core applications, you set a switch by adding an [\](../../framework/configure-apps/file-schema/appsettings/add-element-for-appsettings.md) element to the [\](../../framework/configure-apps/file-schema/appsettings/index.md) section of the web.config file. For example: ```xml diff --git a/docs/fundamentals/runtime-libraries/system-appdomain-unhandledexception.md b/docs/fundamentals/runtime-libraries/system-appdomain-unhandledexception.md index 8f8969bd66535..2b312ba82ea3e 100644 --- a/docs/fundamentals/runtime-libraries/system-appdomain-unhandledexception.md +++ b/docs/fundamentals/runtime-libraries/system-appdomain-unhandledexception.md @@ -24,7 +24,7 @@ Starting with .NET Framework 4, this event is not raised for exceptions that cor To register an event handler for this event, you must have the required permissions, or a is thrown. -For more information about handling events, see [Handling and Raising Events](/dotnet/standard/events/). +For more information about handling events, see [Handling and Raising Events](../../standard/events/index.md). ## Other events for unhandled exceptions diff --git a/docs/fundamentals/runtime-libraries/system-data-dataset.md b/docs/fundamentals/runtime-libraries/system-data-dataset.md index 16b6eb5efa912..b78273bfdd0e9 100644 --- a/docs/fundamentals/runtime-libraries/system-data-dataset.md +++ b/docs/fundamentals/runtime-libraries/system-data-dataset.md @@ -7,7 +7,7 @@ ms.date: 01/02/2024 [!INCLUDE [context](includes/context.md)] -The class, which is an in-memory cache of data retrieved from a data source, is a major component of the ADO.NET architecture. The consists of a collection of objects that you can relate to each other with objects. You can also enforce data integrity in the by using the and objects. For further details about working with objects, see [DataSets, DataTables, and DataViews](/dotnet/framework/data/adonet/dataset-datatable-dataview/). +The class, which is an in-memory cache of data retrieved from a data source, is a major component of the ADO.NET architecture. The consists of a collection of objects that you can relate to each other with objects. You can also enforce data integrity in the by using the and objects. For further details about working with objects, see [DataSets, DataTables, and DataViews](../../framework/data/adonet/dataset-datatable-dataview/index.md). Whereas objects contain the data, the allows you to navigate though the table hierarchy. The tables are contained in a accessed through the property. When accessing objects, note that they are conditionally case sensitive. For example, if one is named "mydatatable" and another is named "Mydatatable", a string used to search for one of the tables is regarded as case sensitive. However, if "mydatatable" exists and "Mydatatable" does not, the search string is regarded as case insensitive. For more information about working with objects, see [Creating a DataTable](../../framework/data/adonet/dataset-datatable-dataview/creating-a-datatable.md). diff --git a/docs/fundamentals/runtime-libraries/system-datetime.md b/docs/fundamentals/runtime-libraries/system-datetime.md index 173066c2e0468..e56a0a4e1b3b1 100644 --- a/docs/fundamentals/runtime-libraries/system-datetime.md +++ b/docs/fundamentals/runtime-libraries/system-datetime.md @@ -368,7 +368,7 @@ The following example persists an array of values as inte ### Serialize DateTime values -You can persist values through serialization to a stream or file, and then restore them through deserialization. data is serialized in some specified object format. The objects are restored when they are deserialized. A formatter or serializer, such as or , handles the process of serialization and deserialization. For more information about serialization and the types of serialization supported by .NET, see [Serialization](/dotnet/standard/serialization/). +You can persist values through serialization to a stream or file, and then restore them through deserialization. data is serialized in some specified object format. The objects are restored when they are deserialized. A formatter or serializer, such as or , handles the process of serialization and deserialization. For more information about serialization and the types of serialization supported by .NET, see [Serialization](../../standard/serialization/index.md). The following example uses the class to serialize and deserialize values. The values represent all leap year days in the twenty-first century. The output represents the result if the example is run on a system whose current culture is English (United Kingdom). Because you've deserialized the object itself, the code doesn't have to handle cultural differences in date and time formats. diff --git a/docs/fundamentals/runtime-libraries/system-dynamic-expandoobject.md b/docs/fundamentals/runtime-libraries/system-dynamic-expandoobject.md index 7bedda90975ea..fd0e86325ac74 100644 --- a/docs/fundamentals/runtime-libraries/system-dynamic-expandoobject.md +++ b/docs/fundamentals/runtime-libraries/system-dynamic-expandoobject.md @@ -20,7 +20,7 @@ The `ExpandoObject` class is an implementation of the dynamic object concept tha In C#, to enable late binding for an instance of the `ExpandoObject` class, you must use the `dynamic` keyword. For more information, see [Using Type dynamic](/dotnet/csharp/programming-guide/types/using-type-dynamic). -In Visual Basic, dynamic operations are supported by late binding. For more information, see [Early and Late Binding (Visual Basic)](/dotnet/visual-basic/programming-guide/language-features/early-late-binding/). +In Visual Basic, dynamic operations are supported by late binding. For more information, see [Early and Late Binding (Visual Basic)](../../visual-basic/programming-guide/language-features/early-late-binding/index.md). The following code example demonstrates how to create an instance of the `ExpandoObject` class. diff --git a/docs/fundamentals/runtime-libraries/system-iasyncdisposable.md b/docs/fundamentals/runtime-libraries/system-iasyncdisposable.md index 55f5b830cf484..69462ebd94989 100644 --- a/docs/fundamentals/runtime-libraries/system-iasyncdisposable.md +++ b/docs/fundamentals/runtime-libraries/system-iasyncdisposable.md @@ -11,7 +11,7 @@ In .NET, classes that own unmanaged resources usually implement the method of this interface returns a that represents the asynchronous dispose operation. Classes that own unmanaged resources implement this method, and the consumer of these classes calls this method on an object when it is no longer needed. -The async methods are used in conjunction with the `async` and `await` keywords in C# and Visual Basic. For more information, see [The Task asynchronous programming model in C#](/dotnet/csharp/programming-guide/concepts/async/index) or [Asynchronous Programming with Async and Await (Visual Basic)](/dotnet/visual-basic/programming-guide/concepts/async/). +The async methods are used in conjunction with the `async` and `await` keywords in C# and Visual Basic. For more information, see [The Task asynchronous programming model in C#](/dotnet/csharp/programming-guide/concepts/async/index) or [Asynchronous Programming with Async and Await (Visual Basic)](../../visual-basic/programming-guide/concepts/async/index.md). ## Use an object that implements IAsyncDisposable diff --git a/docs/fundamentals/runtime-libraries/system-idisposable.md b/docs/fundamentals/runtime-libraries/system-idisposable.md index 779664f620410..26765cee858fa 100644 --- a/docs/fundamentals/runtime-libraries/system-idisposable.md +++ b/docs/fundamentals/runtime-libraries/system-idisposable.md @@ -23,7 +23,7 @@ Because the im > [!IMPORTANT] > In .NET Framework, the C++ compiler supports deterministic disposal of resources and does not allow direct implementation of the method. -For a detailed discussion about how this interface and the method are used, see the [Garbage Collection](/dotnet/standard/garbage-collection/) and [Implementing a Dispose Method](../../standard/garbage-collection/implementing-dispose.md) topics. +For a detailed discussion about how this interface and the method are used, see the [Garbage Collection](../../standard/garbage-collection/index.md) and [Implementing a Dispose Method](../../standard/garbage-collection/implementing-dispose.md) topics. ## Use an object that implements IDisposable diff --git a/docs/fundamentals/runtime-libraries/system-threading-thread.md b/docs/fundamentals/runtime-libraries/system-threading-thread.md index f08dcfc7dd04f..ea4362c976b6b 100644 --- a/docs/fundamentals/runtime-libraries/system-threading-thread.md +++ b/docs/fundamentals/runtime-libraries/system-threading-thread.md @@ -124,7 +124,7 @@ You can retrieve a number of property values that provide information about a th - A thread ID. The value of the read-only property is assigned by the runtime and uniquely identifies a thread within its process. > [!NOTE] - > An operating-system [ThreadId](/windows/win32/api/processthreadsapi/nf-processthreadsapi-getthreadid) has no fixed relationship to a managed thread, because an unmanaged host can control the relationship between managed and unmanaged threads. Specifically, a sophisticated host can use the [CLR Hosting API](/dotnet/framework/unmanaged-api/hosting/) to schedule many managed threads against the same operating system thread, or to move a managed thread between different operating system threads. + > An operating-system [ThreadId](/windows/win32/api/processthreadsapi/nf-processthreadsapi-getthreadid) has no fixed relationship to a managed thread, because an unmanaged host can control the relationship between managed and unmanaged threads. Specifically, a sophisticated host can use the [CLR Hosting API](../../framework/unmanaged-api/hosting/index.md) to schedule many managed threads against the same operating system thread, or to move a managed thread between different operating system threads. - The thread's current state. For the duration of its existence, a thread is always in one or more of the states defined by the property. diff --git a/docs/standard/assembly/index.md b/docs/standard/assembly/index.md index 6a201aee40e4b..f302523881a76 100644 --- a/docs/standard/assembly/index.md +++ b/docs/standard/assembly/index.md @@ -30,7 +30,7 @@ Assemblies have the following properties: - Assemblies are only loaded into memory if they're required. If they aren't used, they aren't loaded. Therefore, assemblies can be an efficient way to manage resources in larger projects. -- You can programmatically obtain information about an assembly by using reflection. For more information, see [Reflection (C#)](/dotnet/csharp/advanced-topics/reflection-and-attributes/) or [Reflection (Visual Basic)](../../visual-basic/programming-guide/concepts/reflection.md). +- You can programmatically obtain information about an assembly by using reflection. For more information, see [Reflection (C#)](../../csharp/advanced-topics/reflection-and-attributes/index.md) or [Reflection (Visual Basic)](../../visual-basic/programming-guide/concepts/reflection.md). - You can load an assembly just to inspect it by using the class on .NET and .NET Framework. replaces the methods. diff --git a/docs/standard/data/xml/process-xml-data-using-linq-to-xml.md b/docs/standard/data/xml/process-xml-data-using-linq-to-xml.md index 2fdda46af635b..4a423659c8696 100644 --- a/docs/standard/data/xml/process-xml-data-using-linq-to-xml.md +++ b/docs/standard/data/xml/process-xml-data-using-linq-to-xml.md @@ -12,7 +12,7 @@ LINQ to XML is the new model in the .NET Framework version 3.5 for processing XM LINQ to XML leverages the language-integrated query (LINQ) technology in .NET Framework version 3.5. LINQ extends the language syntax of C# and Visual Basic to provide powerful query capabilities that can be extended to potentially any data store. - For a detailed discussion of its use, see [LINQ to XML (C#)](../../linq/linq-xml-overview.md) and [LINQ to XML (Visual Basic)](../../linq/linq-xml-overview.md). For an overview of the LINQ framework, see [Language-Integrated Query (LINQ) - C#](/dotnet/csharp/linq/) or [Language-Integrated Query (LINQ) - Visual Basic](../../../visual-basic/programming-guide/concepts/linq/index.md). + For a detailed discussion of its use, see [LINQ to XML (C#)](../../linq/linq-xml-overview.md) and [LINQ to XML (Visual Basic)](../../linq/linq-xml-overview.md). For an overview of the LINQ framework, see [Language-Integrated Query (LINQ) - C#](../../../csharp/linq/index.md) or [Language-Integrated Query (LINQ) - Visual Basic](../../../visual-basic/programming-guide/concepts/linq/index.md). ## See also diff --git a/docs/standard/data/xml/processing-xml-data-in-memory.md b/docs/standard/data/xml/processing-xml-data-in-memory.md index c58f21bbf4d13..2a50b7b354879 100644 --- a/docs/standard/data/xml/processing-xml-data-in-memory.md +++ b/docs/standard/data/xml/processing-xml-data-in-memory.md @@ -12,7 +12,7 @@ The Microsoft .NET Framework includes three models for processing XML data: the The class is a read-only, in-memory data store that is based on the XPath data model. The class offers several editing options and navigation capabilities using a cursor model over XML documents contained in the read-only class as well as the class. - [LINQ to XML](../../linq/linq-xml-overview.md) is a model introduced in the .NET Framework version 3.5 for processing XML data. It's an in-memory model that leverages [Language-Integrated Query (LINQ)](/dotnet/csharp/linq/). LINQ extends the language syntax of C# and Visual Basic to provide new query capabilities. + [LINQ to XML](../../linq/linq-xml-overview.md) is a model introduced in the .NET Framework version 3.5 for processing XML data. It's an in-memory model that leverages [Language-Integrated Query (LINQ)](../../../csharp/linq/index.md). LINQ extends the language syntax of C# and Visual Basic to provide new query capabilities. ## In This Section diff --git a/docs/standard/linq/query-xml-trees-overview.md b/docs/standard/linq/query-xml-trees-overview.md index 0847e7cf6ddae..3339e2d46dc0a 100644 --- a/docs/standard/linq/query-xml-trees-overview.md +++ b/docs/standard/linq/query-xml-trees-overview.md @@ -28,7 +28,7 @@ This section of articles provides information, including examples, about LINQ to ## See also -- [Language-Integrated Query (LINQ) (C#)](/dotnet/csharp/linq/) +- [Language-Integrated Query (LINQ) (C#)](../../csharp/linq/index.md) - [Introduction to LINQ Queries (C#)](../../csharp/linq/get-started/introduction-to-linq-queries.md) - [LINQ in Visual Basic](../../visual-basic/programming-guide/language-features/linq/index.md) - [Language-Integrated Query (LINQ) (Visual Basic)](../../visual-basic/programming-guide/concepts/linq/index.md) diff --git a/docs/standard/parallel-programming/introduction-to-plinq.md b/docs/standard/parallel-programming/introduction-to-plinq.md index 35eafc5a9c805..9db7d2d964ded 100644 --- a/docs/standard/parallel-programming/introduction-to-plinq.md +++ b/docs/standard/parallel-programming/introduction-to-plinq.md @@ -11,10 +11,10 @@ ms.assetid: eaa720d8-8999-4eb7-8df5-3c19ca61cad0 --- # Introduction to PLINQ -Parallel LINQ (PLINQ) is a parallel implementation of the [Language-Integrated Query (LINQ)](/dotnet/csharp/linq/) pattern. PLINQ implements the full set of LINQ standard query operators as extension methods for the namespace and has additional operators for parallel operations. PLINQ combines the simplicity and readability of LINQ syntax with the power of parallel programming. +Parallel LINQ (PLINQ) is a parallel implementation of the [Language-Integrated Query (LINQ)](../../csharp/linq/index.md) pattern. PLINQ implements the full set of LINQ standard query operators as extension methods for the namespace and has additional operators for parallel operations. PLINQ combines the simplicity and readability of LINQ syntax with the power of parallel programming. > [!TIP] -> If you're not familiar with LINQ, it features a unified model for querying any enumerable data source in a type-safe manner. LINQ to Objects is the name for LINQ queries that are run against in-memory collections such as and arrays. This article assumes that you have a basic understanding of LINQ. For more information, see [Language-Integrated Query (LINQ)](/dotnet/csharp/linq/). +> If you're not familiar with LINQ, it features a unified model for querying any enumerable data source in a type-safe manner. LINQ to Objects is the name for LINQ queries that are run against in-memory collections such as and arrays. This article assumes that you have a basic understanding of LINQ. For more information, see [Language-Integrated Query (LINQ)](../../csharp/linq/index.md). ## What is a Parallel query? @@ -31,7 +31,7 @@ The remainder of this article gives an overview of the main PLINQ classes and di The class exposes almost all of PLINQ's functionality. It and the rest of the namespace types are compiled into the System.Core.dll assembly. The default C# and Visual Basic projects in Visual Studio both reference the assembly and import the namespace. - includes implementations of all the standard query operators that LINQ to Objects supports, although it does not attempt to parallelize each one. If you are not familiar with LINQ, see [Introduction to LINQ (C#)](/dotnet/csharp/linq/) and [Introduction to LINQ (Visual Basic)](../../visual-basic/programming-guide/concepts/linq/introduction-to-linq.md). + includes implementations of all the standard query operators that LINQ to Objects supports, although it does not attempt to parallelize each one. If you are not familiar with LINQ, see [Introduction to LINQ (C#)](../../csharp/linq/index.md) and [Introduction to LINQ (Visual Basic)](../../visual-basic/programming-guide/concepts/linq/introduction-to-linq.md). In addition to the standard query operators, the class contains a set of methods that enable behaviors specific to parallel execution. These PLINQ-specific methods are listed in the following table. diff --git a/docs/standard/serialization/system-text-json/overview.md b/docs/standard/serialization/system-text-json/overview.md index 93983fb484184..d722e860e415d 100644 --- a/docs/standard/serialization/system-text-json/overview.md +++ b/docs/standard/serialization/system-text-json/overview.md @@ -48,7 +48,7 @@ For framework versions earlier than .NET Core 3.0, install the [System.Text.Json ## Reflection vs. source generation -By default, `System.Text.Json` gathers the metadata it needs to access properties of objects for serialization and deserialization *at run time* using [reflection](/dotnet/csharp/advanced-topics/reflection-and-attributes/). As an alternative, `System.Text.Json` can use the C# [source generation](../../../csharp/roslyn-sdk/index.md#source-generators) feature to improve performance, reduce private memory usage, and facilitate [assembly trimming](../../../core/deploying/trimming/trim-self-contained.md), which reduces app size. +By default, `System.Text.Json` gathers the metadata it needs to access properties of objects for serialization and deserialization *at run time* using [reflection](../../../csharp/advanced-topics/reflection-and-attributes/index.md). As an alternative, `System.Text.Json` can use the C# [source generation](../../../csharp/roslyn-sdk/index.md#source-generators) feature to improve performance, reduce private memory usage, and facilitate [assembly trimming](../../../core/deploying/trimming/trim-self-contained.md), which reduces app size. For more information, see [Reflection versus source generation](reflection-vs-source-generation.md). diff --git a/docs/standard/serialization/system-text-json/reflection-vs-source-generation.md b/docs/standard/serialization/system-text-json/reflection-vs-source-generation.md index 9c22f9ea9e2e1..a2906811adcac 100644 --- a/docs/standard/serialization/system-text-json/reflection-vs-source-generation.md +++ b/docs/standard/serialization/system-text-json/reflection-vs-source-generation.md @@ -22,7 +22,7 @@ This information is referred to as *metadata*. ## Reflection -By default, collects metadata at run time by using [reflection](/dotnet/csharp/advanced-topics/reflection-and-attributes/). Whenever `JsonSerializer` has to serialize or deserialize a type for the first time, it collects and caches this metadata. The metadata collection process takes time and uses memory. +By default, collects metadata at run time by using [reflection](../../../csharp/advanced-topics/reflection-and-attributes/index.md). Whenever `JsonSerializer` has to serialize or deserialize a type for the first time, it collects and caches this metadata. The metadata collection process takes time and uses memory. ## Source generation diff --git a/docs/standard/serialization/xml-schema-definition-tool-xsd-exe.md b/docs/standard/serialization/xml-schema-definition-tool-xsd-exe.md index 55af8db82ed67..b445e4a1d1b4d 100644 --- a/docs/standard/serialization/xml-schema-definition-tool-xsd-exe.md +++ b/docs/standard/serialization/xml-schema-definition-tool-xsd-exe.md @@ -58,7 +58,7 @@ xsd {file.dll | file.exe} [-outputdir:directory] [/type:typename [...]][/paramet |------------|-----------------| |**/e\[lement\]:**_element_|Specifies the element in the schema to generate code for. By default all elements are typed. You can specify this argument more than once.| |**/enableDataBinding**|Implements the interface on all generated types to enable data binding. The short form is `/edb`.| -|**/enableLinqDataSet**|(Short form: `/eld`.) Specifies that the generated DataSet can be queried against using LINQ to DataSet. This option is used when the /dataset option is also specified. For more information, see [LINQ to DataSet Overview](../../framework/data/adonet/linq-to-dataset-overview.md) and [Querying Typed DataSets](../../framework/data/adonet/querying-typed-datasets.md). For general information about using LINQ, see [Language-Integrated Query (LINQ) - C#](/dotnet/csharp/linq/) or [Language-Integrated Query (LINQ) - Visual Basic](../../visual-basic/programming-guide/concepts/linq/index.md).| +|**/enableLinqDataSet**|(Short form: `/eld`.) Specifies that the generated DataSet can be queried against using LINQ to DataSet. This option is used when the /dataset option is also specified. For more information, see [LINQ to DataSet Overview](../../framework/data/adonet/linq-to-dataset-overview.md) and [Querying Typed DataSets](../../framework/data/adonet/querying-typed-datasets.md). For general information about using LINQ, see [Language-Integrated Query (LINQ) - C#](../../csharp/linq/index.md) or [Language-Integrated Query (LINQ) - Visual Basic](../../visual-basic/programming-guide/concepts/linq/index.md).| |**/f\[ields\]**|Generates fields only. By default, [properties with backing fields](../../csharp/programming-guide/classes-and-structs/properties.md#properties-with-backing-fields) are generated.| |**/l\[anguage\]:**_language_|Specifies the programming language to use. Choose from `CS` (C#, which is the default), `VB` (Visual Basic), `JS` (JScript), or `VJS` (Visual J#). You can also specify a fully qualified name for a class implementing | |**/n\[amespace\]:**_namespace_|Specifies the runtime namespace for the generated types. The default namespace is `Schemas`.| @@ -233,5 +233,5 @@ xsd myAssembly.dll - [Developer command-line shells](/visualstudio/ide/reference/command-prompt-powershell) - [LINQ to DataSet Overview](../../framework/data/adonet/linq-to-dataset-overview.md) - [Querying Typed DataSets](../../framework/data/adonet/querying-typed-datasets.md) -- [LINQ (Language-Integrated Query) (C#)](/dotnet/csharp/linq/) +- [LINQ (Language-Integrated Query) (C#)](../../csharp/linq/index.md) - [LINQ (Language-Integrated Query) (Visual Basic)](../../visual-basic/programming-guide/concepts/linq/index.md) diff --git a/docs/visual-basic/programming-guide/concepts/linq/getting-started-with-linq.md b/docs/visual-basic/programming-guide/concepts/linq/getting-started-with-linq.md index a770cffcec560..b197a0f23d472 100644 --- a/docs/visual-basic/programming-guide/concepts/linq/getting-started-with-linq.md +++ b/docs/visual-basic/programming-guide/concepts/linq/getting-started-with-linq.md @@ -57,5 +57,5 @@ This section contains overviews, examples, and background information that will [Language-Integrated Query (LINQ) (Visual Basic)](index.md) Provides links to topics that explain the LINQ technologies. - [Getting Started with LINQ in C#](/dotnet/csharp/linq/) + [Getting Started with LINQ in C#](../../../../csharp/linq/index.md) Provides links to topics about using LINQ in C#. diff --git a/docs/whats-new/dotnet-docs-mod0.md b/docs/whats-new/dotnet-docs-mod0.md index 38c0b0b313226..9280ec9a44e41 100644 --- a/docs/whats-new/dotnet-docs-mod0.md +++ b/docs/whats-new/dotnet-docs-mod0.md @@ -23,7 +23,7 @@ Welcome to what's new in the .NET docs for December 2024. This article lists som ### Updated articles -- [Build a .NET AI vector search app](/dotnet/ai/quickstarts/build-vector-search-app) - New vector search quickstart +- [Build a .NET AI vector search app](../ai/quickstarts/build-vector-search-app.md) - New vector search quickstart ## ML.NET diff --git a/docs/whats-new/dotnet-docs-mod1.md b/docs/whats-new/dotnet-docs-mod1.md index 79236057dbf37..23b97b98dd3ee 100644 --- a/docs/whats-new/dotnet-docs-mod1.md +++ b/docs/whats-new/dotnet-docs-mod1.md @@ -31,7 +31,7 @@ Welcome to what's new in the .NET docs for January 2025. This article lists some ### New articles -- [Create a minimal AI assistant using .NET](/dotnet/ai/quickstarts/create-assistant) +- [Create a minimal AI assistant using .NET](../ai/quickstarts/create-assistant.md) ## .NET fundamentals