diff --git a/docs/csharp/getting-started/index.md b/docs/csharp/getting-started/index.md index 2fc91e5bf33bb..a10017b3d935b 100644 --- a/docs/csharp/getting-started/index.md +++ b/docs/csharp/getting-started/index.md @@ -37,15 +37,15 @@ The following topics are available: ## Related sections -* [C# Programming Guide](../../csharp/programming-guide/index.md) +* [C# Programming Guide](../programming-guide/index.md) Provides information about C# programming concepts, and describes how to perform various tasks in C#. -* [C# Reference](../../csharp/language-reference/index.md) +* [C# Reference](../language-reference/index.md) Provides detailed reference information about C# keywords, operators, preprocessor directives, compiler options, and compiler errors and warnings. -* [Walkthroughs](../../csharp/walkthroughs.md) +* [Walkthroughs](../walkthroughs.md) Provides links to programming walkthroughs that use C# and a brief description of each walkthrough. diff --git a/docs/csharp/getting-started/introduction-to-the-csharp-language-and-the-net-framework.md b/docs/csharp/getting-started/introduction-to-the-csharp-language-and-the-net-framework.md index 9668e0b808b02..929fd551c80a0 100644 --- a/docs/csharp/getting-started/introduction-to-the-csharp-language-and-the-net-framework.md +++ b/docs/csharp/getting-started/introduction-to-the-csharp-language-and-the-net-framework.md @@ -38,9 +38,9 @@ C# is an elegant and type-safe object-oriented language that enables developers The following are additional C# resources: -- For a good general introduction to the language, see Chapter 1 of the [C# Language Specification](../../csharp/language-reference/language-specification/index.md). +- For a good general introduction to the language, see Chapter 1 of the [C# Language Specification](../language-reference/language-specification/index.md). -- For detailed information about specific aspects of the C# language, see the [C# Reference](../../csharp/language-reference/index.md). +- For detailed information about specific aspects of the C# language, see the [C# Reference](../language-reference/index.md). - For more information about [!INCLUDE[vbteclinq](~/includes/vbteclinq-md.md)], see [LINQ (Language-Integrated Query)](../programming-guide/concepts/linq/index.md). @@ -62,5 +62,5 @@ C# is an elegant and type-safe object-oriented language that enables developers ## See also -- [C#](../../csharp/index.md) +- [C#](../index.md) - [Getting Started with Visual C# and Visual Basic](/visualstudio/ide/getting-started-with-visual-csharp-and-visual-basic) diff --git a/docs/csharp/index.md b/docs/csharp/index.md index 0a8eab3c96b6a..f0fb62a8dbcb6 100644 --- a/docs/csharp/index.md +++ b/docs/csharp/index.md @@ -46,16 +46,16 @@ There are several sections in the C# Guide. You can read them in order, or jump * The .NET Compiler Platform SDK enables you to write components that analyze code, and suggest or make improvements to that code. In this section, you'll learn how the APIs are organized, and how you can create code that enables rules and practices for your team. You'll also see samples, end-to-end scenarios, and links to other libraries with more examples using these APIs. --> -* [C# Programming Guide](../csharp/programming-guide/index.md) +* [C# Programming Guide](./programming-guide/index.md) * Provides information and practical examples about how to use C# language constructs. -* [Walkthroughs](../csharp/walkthroughs.md) +* [Walkthroughs](./walkthroughs.md) * Provides links to programming walkthroughs that use C# and a brief description of each walkthrough. * [Language Reference](language-reference/index.md) * This section contains the reference material on the C# language. This material helps you understand the syntax and semantics of C#. It also includes reference material on types, operators, attributes, preprocessor directives, compiler switches, compiler errors, and compiler warnings. -* [C# Language Specification](../csharp/language-reference/language-specification/index.md) +* [C# Language Specification](./language-reference/language-specification/index.md) * Links to the latest versions of the C# language specification. ## See also diff --git a/docs/csharp/properties.md b/docs/csharp/properties.md index 90ba576298424..20736aad9ef26 100644 --- a/docs/csharp/properties.md +++ b/docs/csharp/properties.md @@ -145,7 +145,7 @@ by concatenating the first and last names: [!code-csharp[A computed property](../../samples/snippets/csharp/properties/Person.cs#10)] -The example above uses the [string interpolation](../csharp/language-reference/tokens/interpolated.md) feature to create +The example above uses the [string interpolation](./language-reference/tokens/interpolated.md) feature to create the formatted string for the full name. You can also use an *expression-bodied member*, which provides a more diff --git a/docs/csharp/tutorials/working-with-linq.md b/docs/csharp/tutorials/working-with-linq.md index afaf0ad829efd..b11133f400348 100644 --- a/docs/csharp/tutorials/working-with-linq.md +++ b/docs/csharp/tutorials/working-with-linq.md @@ -137,7 +137,7 @@ public static void Main(string[] args) However, there's no shuffle method to take advantage of in the standard library, so you'll have to write your own. The shuffle method you'll be creating illustrates several techniques that you'll use with LINQ-based programs, so each part of this process will be explained in steps. -In order to add some functionality to how you interact with the you'll get back from LINQ queries, you'll need to write some special kinds of methods called [extension methods](../../csharp/programming-guide/classes-and-structs/extension-methods.md). Briefly, an extension method is a special purpose *static method* that adds new functionality to an already-existing type without having to modify the original type you want to add functionality to. +In order to add some functionality to how you interact with the you'll get back from LINQ queries, you'll need to write some special kinds of methods called [extension methods](../programming-guide/classes-and-structs/extension-methods.md). Briefly, an extension method is a special purpose *static method* that adds new functionality to an already-existing type without having to modify the original type you want to add functionality to. Give your extension methods a new home by adding a new *static* class file to your program called `Extensions.cs`, and then start building out the first extension method: diff --git a/docs/csharp/walkthroughs.md b/docs/csharp/walkthroughs.md index ca37fd4c04b72..62bdf29fc1693 100644 --- a/docs/csharp/walkthroughs.md +++ b/docs/csharp/walkthroughs.md @@ -15,33 +15,33 @@ Walkthroughs give step-by-step instructions for common scenarios, which makes th ## In This Section [Accessing the Web by Using Async and Await](./programming-guide/concepts/async/walkthrough-accessing-the-web-by-using-async-and-await.md) - Shows how to create an asynchronous solution by using [async](../csharp/language-reference/keywords/async.md) and [await](../csharp/language-reference/keywords/await.md). + Shows how to create an asynchronous solution by using [async](./language-reference/keywords/async.md) and [await](./language-reference/keywords/await.md). [Creating a Windows Runtime Component in C# or Visual Basic and Calling it from JavaScript](/windows/uwp/winrt-components/walkthrough-creating-a-simple-windows-runtime-component-and-calling-it-from-javascript) Shows how to create a Windows Runtime type, package it in a Windows Runtime component, and then call the component from a [!INCLUDE[win8_appname_long](~/includes/win8-appname-long-md.md)] app that's built for Windows by using JavaScript. - [Office Programming (C# and Visual Basic)](../csharp/programming-guide/interop/walkthrough-office-programming.md) + [Office Programming (C# and Visual Basic)](./programming-guide/interop/walkthrough-office-programming.md) Shows how to create an Excel workbook and a Word document by using C# and Visual Basic. - [Creating and Using Dynamic Objects (C# and Visual Basic)](../csharp/programming-guide/types/walkthrough-creating-and-using-dynamic-objects.md) + [Creating and Using Dynamic Objects (C# and Visual Basic)](./programming-guide/types/walkthrough-creating-and-using-dynamic-objects.md) Shows how to create a custom object that dynamically exposes the contents of a text file, and how to create a project that uses the `IronPython` library. - [Authoring a Composite Control with Visual C#](../../docs/framework/winforms/controls/walkthrough-authoring-a-composite-control-with-visual-csharp.md) + [Authoring a Composite Control with Visual C#](../framework/winforms/controls/walkthrough-authoring-a-composite-control-with-visual-csharp.md) Demonstrates creating a simple composite control and extending its functionality through inheritance. - [Creating a Windows Forms Control that Takes Advantage of Visual Studio Design-Time Features](../../docs/framework/winforms/controls/creating-a-wf-control-design-time-features.md) + [Creating a Windows Forms Control that Takes Advantage of Visual Studio Design-Time Features](../framework/winforms/controls/creating-a-wf-control-design-time-features.md) Illustrates how to create a custom designer for a custom control. - [Inheriting from a Windows Forms Control with Visual C#](../../docs/framework/winforms/controls/walkthrough-inheriting-from-a-windows-forms-control-with-visual-csharp.md) + [Inheriting from a Windows Forms Control with Visual C#](../framework/winforms/controls/walkthrough-inheriting-from-a-windows-forms-control-with-visual-csharp.md) Demonstrates creating a simple inherited button control. This button inherits functionality from the standard Windows Forms button and exposes a custom member. - [Debugging Custom Windows Forms Controls at Design Time](../../docs/framework/winforms/controls/walkthrough-debugging-custom-windows-forms-controls-at-design-time.md) + [Debugging Custom Windows Forms Controls at Design Time](../framework/winforms/controls/walkthrough-debugging-custom-windows-forms-controls-at-design-time.md) Describes how to debug the design-time behavior of your custom control. - [Performing Common Tasks Using Smart Tags on Windows Forms Controls](../../docs/framework/winforms/controls/performing-common-tasks-using-smart-tags-on-wf-controls.md) + [Performing Common Tasks Using Smart Tags on Windows Forms Controls](../framework/winforms/controls/performing-common-tasks-using-smart-tags-on-wf-controls.md) Demonstrates some of the commonly performed tasks such as adding or removing a tab on a `TabControl`, docking a control to its parent, and changing the orientation of a `SplitContainer` control. - [Writing Queries in C# (LINQ)](../csharp/programming-guide/concepts/linq/walkthrough-writing-queries-linq.md) + [Writing Queries in C# (LINQ)](./programming-guide/concepts/linq/walkthrough-writing-queries-linq.md) Demonstrates the C# language features that are used to write [!INCLUDE[vbteclinq](~/includes/vbteclinq-md.md)] query expressions. [Manipulating Data (C#) (LINQ to SQL)](../framework/data/adonet/sql/linq/walkthrough-manipulating-data-csharp.md) @@ -65,5 +65,5 @@ Walkthroughs give step-by-step instructions for common scenarios, which makes th ## See also -- [C# Programming Guide](../csharp/programming-guide/index.md) +- [C# Programming Guide](./programming-guide/index.md) - [Visual Studio Samples](/visualstudio/ide/visual-studio-samples)