diff --git a/.openpublishing.redirection.json b/.openpublishing.redirection.json index a34e44cb7f7..be84e4f4915 100644 --- a/.openpublishing.redirection.json +++ b/.openpublishing.redirection.json @@ -995,6 +995,11 @@ "redirect_url": "/visualstudio/help-viewer/find-topics", "redirect_document_id": false }, + { + "source_path": "docs/ide/csharp-developer-productivity.md", + "redirect_url": "/visualstudio/ide/productivity-features", + "redirect_document_id": false + }, { "source_path": "docs/ide/how-to-manage-build-configurations-with-visual-basic-developer-settings-applied.md", "redirect_url": "/visualstudio/ide/understanding-build-configurations", diff --git a/docs/ide/csharp-developer-productivity.md b/docs/ide/csharp-developer-productivity.md deleted file mode 100644 index bb22ea5d527..00000000000 --- a/docs/ide/csharp-developer-productivity.md +++ /dev/null @@ -1,337 +0,0 @@ ---- -title: Productivity tips for .NET developers -description: Review productivity tips about navigation, code analysis, unit testing, and other features to help you write better C# code for .NET faster. -author: Mikejo5000 -ms.author: mikejo -manager: mijacobs -ms.subservice: general-ide -ms.date: 12/10/2024 -ms.topic: conceptual -helpviewer_keywords: -- editor ---- -# Visual Studio productivity guide for C# developers - -Learn how Visual Studio makes [.NET](/dotnet/fundamentals/) developers who use [C#](/dotnet/csharp/) more productive than ever. Take advantage of our performance and productivity improvements like navigation to decompiled assemblies, variable name suggestions as you type, a hierarchy-view in **Test Explorer**, Go To All (**Ctrl**+**T**) to navigate to file/type/member/symbol declarations, an intelligent **Exception Helper**, code style configuration and enforcement, and many refactorings and code fixes. - -For general productivity for .NET, C++, and other languages, see [Productivity guide for Visual Studio](../ide/productivity-features.md). For information about helpful keyboard shortcuts, see [Productivity shortcuts](../ide/productivity-shortcuts.md). For a complete list of command shortcuts, see [Default keyboard shortcuts](../ide/default-keyboard-shortcuts-in-visual-studio.md). - -## Use keyboard shortcuts from a different editor - -If you're coming from another IDE or coding environment, you can change your keyboard scheme to *Visual Studio Code* or *ReSharper (Visual Studio)*: - -::: moniker range="vs-2022" - -:::image type="content" source="media/vs-2022/keyboard-schemes.png" alt-text="Screenshot of the keyboard schemes in Visual Studio 2022."::: - -::: moniker-end - -::: moniker range="vs-2019" - -![Keyboard Schemes in Visual Studio](../ide/media/VS2017Guide-Keyboard.png) - -::: moniker-end - -Some extensions also offer keyboard schemes: - -- [HotKeys for Visual Studio (ReSharper/IntelliJ)](https://marketplace.visualstudio.com/items?itemName=JustinClareburtMSFT.HotKeys) -- [Emacs Emulation](https://marketplace.visualstudio.com/items?itemName=JustinClareburtMSFT.EmacsEmulation) -- [VSVim](https://marketplace.visualstudio.com/items?itemName=JaredParMSFT.VsVim) - -The following are popular Visual Studio shortcuts: - -| Shortcut (All Profiles) | Command | Description | -|-|-|-| -| **Ctrl**+**T** | Go To All | Navigate to any file, type, member, or symbol declaration | -| **F12** (also **Ctrl**+**Click**) | Go To Definition | Navigate to where a symbol is defined | -| **Ctrl**+**F12** | Go To Implementation | Navigate from a base type or member to its various implementations | -| **Shift**+**F12** | Find All References | See all symbol or literal references | -| **Alt**+**Home** | Go To Base | Navigate up the inheritance chain | -| **Ctrl**+**.** (also **Alt**+**Enter** in C# Profile) | Quick Actions and Refactorings | See what code fixes, code generation actions, refactorings, or other quick actions are available at your cursor position or code selection | -| **Ctrl**+**D** | Duplicate line | Duplicates the line of code that the cursor is in | -| **Shift**+**Alt**+**+**/**-** | Expand/Contract selection | Expands or contracts the current selection in the editor | -| **Shift** + **Alt** + **.** | Insert Next Matching Caret | Adds a selection and caret at the next location that matches the current selection | -| **Ctrl**+**Q** | Search | Search all Visual Studio settings | -| **F5** | Start Debugging | Start debugging your application | -| **Ctrl**+**F5** | Run without Debug | Run your application locally without debugging | -| **Ctrl**+**K**,**D** (Default Profile) or **Ctrl**+**E**,**D** (C# Profile) | Format Document | Cleans up formatting violations in your file based on your newline, spacing, and indentation settings | -| **Ctrl**+**\\**,**Ctrl**+**E** (Default Profile) or **Ctrl**+**W**,**E** (C# Profile) | View Error List | See all errors in your document, project, or solution | -| **Alt** + **PgUp/PgDn** | Go to Next/Previous Issue | Jump to the previous/next error, warning, suggestion in your document | -| **Ctrl**+**K**,**/** | Toggle single line comment/uncomment | This command adds or removes a single line comment depending on whether your selection is already commented | -| **Ctrl**+**Shift**+**/** | Toggle block comment/uncomment | This command adds or removes block comments depending on what you've selected | - -> [!NOTE] -> Some extensions unbind the default Visual Studio keybindings. You can restore your keybindings to their defaults by going to **Tools** > **Import and Export Settings** > **Reset all settings** or **Tools** > **Options** > **Keyboard** > **Reset**. - -For more information about keyboard shortcuts and commands, see [Productivity shortcuts](../ide/productivity-shortcuts.md). Or, see [Keyboard shortcuts in Visual Studio](default-keyboard-shortcuts-in-visual-studio.md) for a comprehensive list along with a downloadable cheat sheet. - -## Navigate quickly to files or types - -Visual Studio has a feature called **Go To All** that you can use to quickly jump to any file, type, member, or symbol declaration. To open it from the menu bar, select **Edit** > **Go To** > **Go To All**. Or, you can open it by using the **Ctrl**+**T** keyboard shortcut. - -A small window is displayed at the top right of your code editor. - -::: moniker range="vs-2022" - -:::image type="content" source="media/vs-2022/go-to-all.png" alt-text="Screenshot of the Go To All window in Visual Studio."::: - -::: moniker-end - -::: moniker range="vs-2019" - -![Screenshot of the Go To All window.](media/go-to-all.png) - -::: moniker-end - -You can use this feature to perform the following actions: - -- Change the location of its search bar or turn off the live navigation preview by using the **gear** icon. -- Filter results by using syntax such as `t mytype`. -- Scope your search to just the current document. -- Camel case matching is supported. - -For more information about **Go To All**, see [Find code by using Go To commands](go-to.md). - -## Enforce code style rules - -You can use an EditorConfig file to codify coding conventions and have them travel with your source. - -::: moniker range="vs-2019" - -![Code style enforcement in Visual Studio](../ide/media/VSGuide_CodeStyle.png) - -::: moniker-end - -- Add a default or .NET-style EditorConfig file to your project by choosing **Add** > **New Item** from the [Add context menu fly-out](use-solution-explorer.md#the-add-menu) in Solution Explorer. Then, in the **Add New Item** dialog box, search for "editorconfig". Select either of the **editorconfig File** item templates and then choose **Add**. - -::: moniker range="vs-2022" - - :::image type="content" source="media/vs-2022/editorconfig-item-templates-csharp.png" alt-text="Screenshot of the EditorConfig file templates for C# in Visual Studio."::: - -::: moniker-end - -::: moniker range="vs-2019" - - ![Screenshot of the EditorConfig item templates in Visual Studio.](media/editorconfig-item-templates.png) - -::: moniker-end - -- Automatically create an *.editorconfig* file based on your code style settings in **Tools** > **Options** > **Text Editor** > **C#** > **Code Style**. - -::: moniker range="vs-2022" - - :::image type="content" source="media/vs-2022/generate-editorconfig-file-csharp.png" alt-text="Screenshot that shows how to generate an .editorconfig file from settings in Visual Studio."::: - -::: moniker-end - -::: moniker range="vs-2019" - - ![Screenshot that shows how to generate an .editorconfig file from Visual Studio settings.](media/vs-2019/generate-editorconfig-file.png) - -::: moniker-end - -- The **code inference feature** of [IntelliCode](/visualstudio/intellicode/intellicode-visual-studio) for Visual Studio infers your code styles from existing code. It then creates a nonempty EditorConfig file with your code-style preferences already defined. - -- Configure the severity level of a code style rule directly through the editor. If you don't have an .editorconfig file, Visual Studio generates one for you. Place your cursor on the error, warning, or suggestion and type **Ctrl**+**.** to open the **Quick Actions and Refactorings** menu. Select **Configure or Suppress issues**. Then select the rule and choose the severity level you would like to configure for that rule. This action updates your existing EditorConfig with the rule’s new severity. - -::: moniker range="vs-2022" - - :::image type="content" source="media/vs-2022/configure-severity-level.png" alt-text="Screenshot of how to configure the severity of a code style rule from within the editor." lightbox="media/vs-2022/configure-severity-level.png"::: - -::: moniker-end - -::: moniker range="vs-2019" - - ![Configure the severity level of a code style rule directly in the editor](../ide/media/configure-severity-level.png) - -::: moniker-end - -Check out the [.NET code-style rule options](/dotnet/fundamentals/code-analysis/code-style-rule-options) documentation, which also includes an example of a complete EditorConfig file. - -## Code Cleanup - -Visual Studio provides on-demand formatting of your code file, including code style preferences, through the **Code Cleanup** feature. To run Code Cleanup, select the broom icon at the bottom of the editor or press **Ctrl**+**K**, **Ctrl**+**E**. - -::: moniker range="vs-2022" - -:::image type="content" source="media/vs-2022/run-code-cleanup.png" alt-text="Screenshot of the Code Cleanup button and options."::: - -::: moniker-end - -::: moniker range="vs-2019" - -![Screenshot of Code Cleanup button.](media/vs-2019/execute-code-cleanup.png) - -::: moniker-end - -You can also run code cleanup across your entire project or solution. Right-click the project or solution name in **Solution Explorer**, select **Analyze and Code Cleanup**, and then select **Run Code Cleanup**. - -::: moniker range="vs-2022" - -:::image type="content" source="media/vs-2022/run-analyze-code-cleanup-project-solution.png" alt-text="Screenshot of how to run Analyze and Code Cleanup across an entire project or solution."::: - -::: moniker-end - -::: moniker range="vs-2019" - -![Screenshot of how to run Code Cleanup across an entire project or solution.](media/vs-2019/run-code-cleanup-project-solution.png) - -::: moniker-end - -In addition to formatting your file for spaces, indents, et cetera, **Code Cleanup** also applies selected code styles. Your preferences for each code style are read from the [EditorConfig file](code-styles-and-code-cleanup.md#code-styles-in-editorconfig-files), if you have one for the project, or from the [code style settings](code-styles-and-code-cleanup.md#code-styles-in-the-options-dialog-box) in the **Options** dialog box. - -## Refactorings and code fixes - -Visual Studio comes with numerous refactorings, code generation actions, and code fixes. Red squiggles represent errors, green squiggles represent warnings, and three gray dots represent code suggestions. You can access code fixes by selecting the light bulb or screwdriver icon, or by pressing **Ctrl**+**.** or **Alt**+**Enter**. Each fix comes with a preview window that shows a live code diff of how the fix works. - -Popular quick fixes and refactorings include: - -- Rename -- Extract Method -- Change Method Signature -- Generate Constructor -- Generate Method -- Move Type to File -- Add Null-Check -- Add Parameter -- Remove Unnecessary Usings -- Foreach Loop to LINQ Query or to LINQ method -- Pull Members Up - -For more information, see [code generation features](code-generation-in-visual-studio.md). - -You can [install .NET analyzers](../code-quality/install-net-analyzers.md) to flag code issues. Or, write your own refactoring or code fix with [Roslyn analyzers](../code-quality/install-roslyn-analyzers.md). - -Several community members have written free extensions that add more code inspections: - -::: moniker range="vs-2022" - -- [Roslynator](https://marketplace.visualstudio.com/items?itemName=josefpihrt.Roslynator2022) -- [SonarLint for Visual Studio](https://marketplace.visualstudio.com/items?itemName=SonarSource.SonarLintforVisualStudio2022) - -::: moniker-end - -::: moniker range="vs-2019" - -- [Roslynator](https://marketplace.visualstudio.com/items?itemName=josefpihrt.Roslynator2019) -- [SonarLint for Visual Studio](https://marketplace.visualstudio.com/items?itemName=SonarSource.SonarLintforVisualStudio2019) -- [StyleCopAnalyzers](https://www.nuget.org/packages/stylecop.analyzers/) -- [CodeCracker](https://www.nuget.org/packages/codecracker.CSharp/) - -![Refactorings in Visual Studio](../ide/media/VSGuide_CodeAnalysis.png) - -::: moniker-end - -## Find Usages, Go To Implementation, and Navigate To Decompiled Assemblies - -Visual Studio has many features to help you search and [navigate your code](../ide/navigating-code.md). - -| Feature | Shortcut | Details/Improvements | -|- | - | -| -| Find All References | **Shift**+**F12**| Results are colorized and can be grouped by project, definition, and reference type, such as read or write. You can also "lock" results. | -| Go To Implementation | **Ctrl**+**F12** | You can use Go To Definition on the `override` keyword to navigate to the overridden member | -| Go To Definition | **F12** or **Ctrl**+**Click**| Press **Ctrl** while clicking to navigate to definition | -| Peek Definition | **Alt**+**F12** | Inline view of a definition | -| Structure Visualizer | Gray, dotted-lines between braces | Hover to see your code structure | -| Navigation to decompiled assemblies | **F12** or **Ctrl**+**Click** | Navigate to external source (decompiled with ILSpy) by enabling the feature: **Tools** > **Options** > **Text Editor** > **C#** > **Advanced** > **Enable navigation to decompiled sources**. | - -::: moniker range="vs-2019" - -![Go To All and Find All References](../ide/media/VSIDE_Productivity_Navigation.png) - -::: moniker-end - -## Improved IntelliSense - -Use [IntelliCode](/visualstudio/intellicode/intellicode-visual-studio) for Visual Studio to get context-aware code completions instead of just an alphabetical list. - -::: moniker range=">=vs-2022" -## AI assistance - -If you're using [Copilot](../ide/visual-studio-github-copilot-install-and-states.md), get AI assistance to [help you write and debug code](../ide/ai-assisted-development-visual-studio.md#ai-capabilities-side-by-side). -::: moniker-end - -## Unit testing - -We've made numerous improvements to the testing experience. You can test with the [MSTest](../test/using-microsoft-visualstudio-testtools-unittesting-members-in-unit-tests.md) (MSTest v1 or MSTest v2), [NUnit](../test/getting-started-with-unit-testing.md), and [XUnit](../test/getting-started-with-unit-testing.md) test frameworks. - -- **Test Explorer** test discovery is fast. - -- Organize your tests in **Test Explorer** with *hierarchical sorting*. - -::: moniker range="vs-2019" - - ![Hierarchy view for Text Explorer in Visual Studio](../ide/media/VSGuide_Testing.png) - -::: moniker-end - -- [Live unit testing](../test/live-unit-testing.md) continuously runs tests impacted by your code changes and updates inline editor icons to let you know the status of your tests. Include or exclude specific tests or test projects from your live test set. (Visual Studio Enterprise edition only.) - -For more information, see [Unit test basics](../test/unit-test-basics.md). - -## Debugging - -Visual Studio includes the following debugging capabilities: - -- The ability to search for a string within the **Watch**, **Autos**, and **Locals** windows. -- *Run to click*, which lets you hover next to a line of code, hit the green 'play' icon that appears, and run your program until it reaches that line. -- The [**Exception Helper**](../debugger/exception-helper.md), which puts the most important information at the top level in the dialog, for example, which variable is `null` in a `NullReferenceException`. -- [Step back debugging](../debugger/view-historical-application-state.md), which lets you go back to previous breakpoints or steps and view the state of the application as it was in the past. -- [Snapshot debugging](/azure/application-insights/app-insights-snapshot-debugger), which lets you investigate the state of a live web application at the moment an exception was thrown (must be on Azure). - -::: moniker range="vs-2022" - -:::image type="content" source="../debugger/media/debugger-exception-helper-locerror.png" alt-text="Screenshot of the Exception Helper next to a line of code."::: - -::: moniker-end - -::: moniker range="vs-2019" - -![Exception Helper in Visual Studio](../ide/media/VSGuide_Debugging.png) - -::: moniker-end - -## Version control - -::: moniker range="vs-2022" - -In Visual Studio 2022, you can use Git directly from the IDE to create, review, check out, and run pull requests. To learn more, see [How Visual Studio makes version control easy with Git](../version-control/git-with-visual-studio.md?view=vs-2022&preserve-view=true). - -::: moniker-end - -::: moniker range="vs-2019" - -You can use [Git](../version-control/git-with-visual-studio.md) or TFVC to store and update your code in Visual Studio. - -- In Visual Studio 2019 version 16.8 and later, you can use [Git](../version-control/git-team-explorer-feature-comparison.md) from directly within the IDE to create, review, check out, and run pull requests. - -- In Visual Studio 2019 version 16.7 and earlier, install the [Pull requests for Visual Studio](https://marketplace.visualstudio.com/items?itemName=vsideversioncontrolmsft.pr4vs) extension to create, review, check out, and run pull requests without leaving Visual Studio. - - - Organize your local changes in [Team Explorer](reference/team-explorer-reference.md) and use the status bar to track pending commits and changes. - - - Set up continuous integration and delivery for your ASP.NET projects inside of Visual Studio with the [Continuous delivery tools for Visual Studio](https://marketplace.visualstudio.com/items?itemName=VSIDEDevOpsMSFT.ContinuousDeliveryToolsforVisualStudio) extension. - - ![Source control in Visual Studio](../ide/media/VSIDE_Productivity_SourceControl.png) - -::: moniker-end - -## What other features should I know about? - -Here's a list of editor and productivity features to make writing code more efficient. Some features might need to be enabled because they're off by default. - -| Feature | Details | How to enable | -|-|-|-| -| Locate File in Solution Explorer | Highlights the active file in **Solution Explorer** | **Tools** > **Options** > **Projects and Solutions** > **Track Active Item in Solution Explorer** | -| Add usings for types in reference assemblies and NuGet packages | Shows an error light bulb with a code fix to install a NuGet package for an unreferenced type | **Tools** > **Options** > **Text Editor** > **C#** > **Advanced** > **Suggest usings for types in reference assemblies** and **Suggest usings for types in NuGet packages** | -| Enable full solution analysis | See all errors in your solution in the **Error List** | **Tools** > **Options** > **Text Editor** > **C#** > **Advanced** > **Enable full solution analysis** | -| Enable navigation to decompiled sources | Allow Go To Definition on types/members from external sources and use the ILSpy decompiler to show method bodies | **Tools** > **Options** > **Text Editor** > **C#** > **Advanced** > **Enable navigation to decompiled sources** | -| Completion/Suggestion Mode | Changes the completion behavior in [IntelliSense](using-intellisense.md). Developers with IntelliJ backgrounds tend to use a nondefault setting here. | **Edit** > **IntelliSense** > **Toggle Completion Mode** (or press **Ctrl**+**Alt**+**Space** in the editor) | -| [CodeLens](../ide/find-code-changes-and-other-history-with-codelens.md) | Displays code reference information and change history in the editor. (Source control CodeLens indicators aren't available in Visual Studio Community edition.) | **Tools** > **Options** > **Text Editor** > **All Languages** > **CodeLens** | -| [Code snippets](../ide/visual-csharp-code-snippets.md) | Help stub out common boilerplate code | Type a snippet name and press **Tab** twice. | -| [Paste JSON or XML as classes](reference/paste-json-xml.md) | Copy any JSON or XML text fragment to the clipboard and paste it as strongly typed .NET classes into any C# code file. | **Edit** > **Paste Special** > **Paste JSON As Classes** (or **Paste XML As Classes**) | -| [Copy and trim indentation](writing-code-in-the-code-and-text-editor.md#copy-and-paste-code) | Copy code from Visual Studio to another program (Outlook, Teams, etc.), without having to manually fix indentation after you paste your code. Available in Visual Studio 2022 [version 17.7](/visualstudio/releases/2022/release-notes) and later. | - -## Related content - -- [.NET C# documentation](/dotnet/csharp/) -- [Working with C# in VS Code](https://code.visualstudio.com/docs/languages/csharp) diff --git a/docs/ide/productivity-features.md b/docs/ide/productivity-features.md index 6f58cd6e86f..3aac6b24425 100644 --- a/docs/ide/productivity-features.md +++ b/docs/ide/productivity-features.md @@ -1,7 +1,7 @@ --- title: Efficient coding, debugging, & keyboard shortcuts description: Learn about the keyboard shortcuts and productivity features in Visual Studio that can help you efficiently write code, debug code, and handle errors. -ms.date: 03/05/2025 +ms.date: 04/08/2025 ms.topic: conceptual author: Mikejo5000 ms.author: mikejo @@ -23,7 +23,13 @@ Save time digging through menus by quickly searching for anything you need, incl - **Mock code using task list**. If you don't have enough requirements to complete a piece of code, use Task List to track code comments that use tokens such as `TODO` and `HACK`, or custom tokens, and to manage shortcuts that take you directly to a predefined location in code. For more information, see [Use the Task List](../ide/using-the-task-list.md). - **Use Solution Explorer shortcuts**. If you're new to Visual Studio, these shortcuts come in handy and save you time while you're coming up to speed on a new codebase. For the full list of shortcuts, see [Default keyboard shortcuts in Visual Studio](../ide/default-keyboard-shortcuts-in-visual-studio.md#bkmk_solutionexplorerGLOBAL). +::: zone-end +::: zone pivot="programming-language-csharp" +- **Use keyboard shortcuts from a different editor**. If you're coming from another IDE or coding environment, you can change your keyboard scheme to *Visual Studio Code* or *ReSharper (Visual Studio)* using **Tools > Options** settings for **Environment > Keyboard**. Some extensions also offer keyboard schemes: [HotKeys for Visual Studio (ReSharper/IntelliJ)](https://marketplace.visualstudio.com/items?itemName=JustinClareburtMSFT.HotKeys) and [VSVim](https://marketplace.visualstudio.com/items?itemName=JaredParMSFT.VsVim). +::: zone-end + +::: zone pivot="programming-language-csharp,programming-language-cpp,programming-language-vb,programming-language-all" - **[Identify and customize keyboard shortcuts in Visual Studio](../ide/identifying-and-customizing-keyboard-shortcuts-in-visual-studio.md)**. You can identify keyboard shortcuts for Visual Studio commands, customize those shortcuts, and export them for others to use. You can always find and change a keyboard shortcut in the Options dialog box. - **Make Visual Studio more accessible**. Visual Studio has built-in accessibility features that are compatible with screen readers and other assistive technologies. See [Accessibility tips and tricks for Visual Studio](../ide/reference/accessibility-tips-and-tricks.md) for the full list of available features. @@ -79,6 +85,16 @@ Write code more quickly by using the following features. ::: moniker-end ::: zone-end +::: zone pivot="programming-language-csharp" +- **Apply code styles with code cleanup** Visual Studio provides on-demand formatting of your code file, including code style preferences, through the Code Cleanup feature. To run Code Cleanup, select the broom icon at the bottom of the editor or press **Ctrl+K, Ctrl+E**. For detailed instructions, see [Code style preferences](../ide/code-styles-and-code-cleanup.md). +::: zone-end + +::: zone pivot="programming-language-csharp,programming-language-cpp,programming-language-vb" +::: moniker range=">=vs-2022" +- **Write or generate unit tests** Test Explorer automatically discovers unit tests written using supported test frameworks. You can use Copilot or built-in features to generate unit tests. For more information, see [Unit test basics](../test/unit-test-basics.md) and [Create unit test method stubs from code](../test/create-unit-tests-menu.md). +::: moniker-end +::: zone-end + ::: zone pivot="programming-language-csharp,programming-language-vb" - **Install and manage NuGet packages in Visual Studio**. NuGet is a mechanism through which developers can create, share, and consume useful code. The NuGet Package Manager UI in Visual Studio on Windows allows you to easily install, uninstall, and update NuGet packages in projects and solutions. For more information, see [Install and manage packages in Visual Studio using the NuGet Package Manager](/nuget/consume-packages/install-use-packages-visual-studio). ::: zone-end @@ -103,6 +119,8 @@ You can use various techniques to find and move to specific locations in your co - **See frequently used files with Edit/Go to Recent File**. Use the Go To commands in Visual Studio to perform a focused search of your code to help you quickly find specified items. For detailed instructions, see [Find code using Go To commands](../ide/go-to.md). +- **Jump to any file, type, member, or symbol declaration.** Visual Studio has a feature called **Go To All** that you can use to quickly find the code you want. For detailed instructions, see [Find code using Go To commands](../ide/go-to.md). + - **Synchronize Solution Explorer** For large solutions, use the **Sync with Active Document** button in Solution Explorer to find the active document within the project hierarchy. - **Move the [Properties window](../ide/reference/properties-window.md) to the right-hand side**. If you're looking for a more familiar window layout, you can move the Properties window in Visual Studio by pressing **F4**. diff --git a/docs/ide/reference/convert-foreach-linq.md b/docs/ide/reference/convert-foreach-linq.md index 25ec64923d4..8f8ac58952f 100644 --- a/docs/ide/reference/convert-foreach-linq.md +++ b/docs/ide/reference/convert-foreach-linq.md @@ -73,4 +73,4 @@ public class Class1 - [Refactoring](../refactoring-in-visual-studio.md) - [Preview Changes window](../../ide/preview-changes.md) -- [Tips for .NET Developers](../csharp-developer-productivity.md) +- [Productivity features](../productivity-features.md) diff --git a/docs/ide/reference/convert-local-function-method.md b/docs/ide/reference/convert-local-function-method.md index c731f1e893f..f5930713a50 100644 --- a/docs/ide/reference/convert-local-function-method.md +++ b/docs/ide/reference/convert-local-function-method.md @@ -37,4 +37,4 @@ This refactoring applies to: ## See also - [Refactoring](../refactoring-in-visual-studio.md) -- [Tips for .NET Developers](../csharp-developer-productivity.md) +- [Productivity features](../productivity-features.md) diff --git a/docs/ide/reference/extract-interface.md b/docs/ide/reference/extract-interface.md index 32859f0f8cb..9e6dd0cf692 100644 --- a/docs/ide/reference/extract-interface.md +++ b/docs/ide/reference/extract-interface.md @@ -77,4 +77,4 @@ This refactoring applies to: ## See also - [Refactoring](../refactoring-in-visual-studio.md) -- [Tips for .NET Developers](../csharp-developer-productivity.md) +- [Productivity features](../productivity-features.md) diff --git a/docs/ide/reference/generate-deconstructor.md b/docs/ide/reference/generate-deconstructor.md index 829d3db3219..e38a6de4b64 100644 --- a/docs/ide/reference/generate-deconstructor.md +++ b/docs/ide/reference/generate-deconstructor.md @@ -46,4 +46,4 @@ This code generation applies to: - [Code generation](../code-generation-in-visual-studio.md) - [Preview changes](../../ide/preview-changes.md) -- [Tips for .NET developers](../csharp-developer-productivity.md) +- [Productivity features](../productivity-features.md) diff --git a/docs/ide/reference/generate-usings.md b/docs/ide/reference/generate-usings.md index b072d60e7ac..9fa1d1b303c 100644 --- a/docs/ide/reference/generate-usings.md +++ b/docs/ide/reference/generate-usings.md @@ -46,4 +46,4 @@ This code generation applies to: - [Code generation](../code-generation-in-visual-studio.md) - [Preview Changes](../../ide/preview-changes.md) -- [Tips for .NET developers](../csharp-developer-productivity.md) +- [Productivity features](../productivity-features.md) diff --git a/docs/ide/reference/invert-conditional-logical.md b/docs/ide/reference/invert-conditional-logical.md index ca35ec9e5ce..2c266619d86 100644 --- a/docs/ide/reference/invert-conditional-logical.md +++ b/docs/ide/reference/invert-conditional-logical.md @@ -37,4 +37,4 @@ This refactoring applies to: ## See also - [Refactoring](../refactoring-in-visual-studio.md) -- [Tips for .NET Developers](../csharp-developer-productivity.md) +- [Productivity features](../productivity-features.md) diff --git a/docs/ide/reference/invert-if-statement.md b/docs/ide/reference/invert-if-statement.md index e3efd6bc679..a8271dcb15d 100644 --- a/docs/ide/reference/invert-if-statement.md +++ b/docs/ide/reference/invert-if-statement.md @@ -41,4 +41,4 @@ This refactoring applies to: ## See also - [Refactoring](../refactoring-in-visual-studio.md) -- [Tips for .NET Developers](../csharp-developer-productivity.md) +- [Productivity features](../productivity-features.md) diff --git a/docs/ide/reference/paste-json-xml.md b/docs/ide/reference/paste-json-xml.md index f2798832bf0..e9fd8adbda5 100644 --- a/docs/ide/reference/paste-json-xml.md +++ b/docs/ide/reference/paste-json-xml.md @@ -163,5 +163,4 @@ namespace PasteDemo ## See also - [Features of the code editor](../../ide/writing-code-in-the-code-and-text-editor.md) -- Get started tips in [Visual Studio productivity guide for C# developers](../csharp-developer-productivity.md) - [Productivity guide for Visual Studio](../productivity-features.md) diff --git a/docs/ide/reference/unused-values-parameters.md b/docs/ide/reference/unused-values-parameters.md index 1525442a9c6..ece5b09b3d0 100644 --- a/docs/ide/reference/unused-values-parameters.md +++ b/docs/ide/reference/unused-values-parameters.md @@ -37,4 +37,4 @@ This refactoring applies to: ## See also - [Overview of Code Refactoring in Visual Studio](../refactoring-in-visual-studio.md) -- [The Visual Studio productivity guide for C# developers](../csharp-developer-productivity.md) +- [Productivity features](../productivity-features.md) diff --git a/docs/ide/reference/use-block-body-lambda.md b/docs/ide/reference/use-block-body-lambda.md index b9bbeddac91..093d72ca51a 100644 --- a/docs/ide/reference/use-block-body-lambda.md +++ b/docs/ide/reference/use-block-body-lambda.md @@ -34,4 +34,4 @@ This refactoring applies to: ## See also - [Refactoring](../refactoring-in-visual-studio.md) -- [Tips for .NET Developers](../csharp-developer-productivity.md) +- [Productivity features](../productivity-features.md) diff --git a/docs/install/using-visual-studio-vm.md b/docs/install/using-visual-studio-vm.md index 1df6ea036de..b96c3da32c0 100644 --- a/docs/install/using-visual-studio-vm.md +++ b/docs/install/using-visual-studio-vm.md @@ -2,7 +2,7 @@ title: Using Visual Studio on an Azure Virtual Machine titleSuffix: '' description: Use Visual Studio on an Azure virtual machine with system images for different Visual Studio configurations in the Azure Marketplace. -ms.date: 08/19/2023 +ms.date: 4/9/2025 ms.topic: conceptual helpviewer_keywords: - azure services @@ -23,21 +23,16 @@ New to Azure? [Create a free Azure account](https://azure.microsoft.com/free). ## What configurations and versions are available? -Images for the most recent major versions, Visual Studio 2022, Visual Studio 2019, Visual Studio 2017 and Visual Studio 2015, can be found in the Azure Marketplace. Each of these versions offers the Visual Studio Enterprise and the Visual Studio Community editions. These images are updated at least every month to include the latest Visual Studio and Windows updates. While the names of the images remain the same, each image's description includes the installed product version and the image's "as of" date. +Images for the latest major versions, Visual Studio 2022, Visual Studio 2019, and Visual Studio 2017 are available in the [Azure Marketplace](https://azuremarketplace.microsoft.com/marketplace/apps?exp=ubp8&search=visual%20studio&page=1&filters=microsoft%3Bwindows). These images are updated at least once a month to include the latest Visual Studio and Windows updates. Although the image names remain unchanged, each image's description includes the installed product version and the date it reflects | Release version | Editions | Product version | |----------------------------------------------------------------------------------------------------------------------------------------------------------------|-----------------------|-----------------------| -| [Visual Studio 2022](https://azuremarketplace.microsoft.com/marketplace/apps/microsoftvisualstudio.visualstudio2022?tab=Overview) | Enterprise, Community | Version 17.2 | -| [Visual Studio 2022 (Microsoft Dev Box compatible)](https://azuremarketplace.microsoft.com/marketplace/apps/microsoftvisualstudio.visualstudioplustools?exp=ubp8&tab=Overview) | Enterprise, Professional | Version 17.5 | -| [Visual Studio 2019: Latest (Version 16.11)](https://azuremarketplace.microsoft.com/marketplace/apps/microsoftvisualstudio.visualstudio2019latest?tab=Overview) | Enterprise, Community | Version 16.11 | -| [Visual Studio 2019 (Microsoft Dev Box compatible)](https://azuremarketplace.microsoft.com/marketplace/apps/microsoftvisualstudio.visualstudio2019plustools?exp=ubp8&tab=Overview) | Enterprise, Professional | Version 16.11 | +| [Visual Studio 2022 (Microsoft Dev Box compatible)](https://azuremarketplace.microsoft.com/en-US/marketplace/apps/microsoftvisualstudio.visualstudioplustools?exp=ubp8&tab=Overview) | Enterprise, Professional, Community | Version 17.12 | +| [Visual Studio 2019 (Microsoft Dev Box compatible)](https://azuremarketplace.microsoft.com/en-US/marketplace/apps/microsoftvisualstudio.visualstudio2019plustools?exp=ubp8&tab=Overview) | Enterprise, Professional | Version 16.11 | | [Visual Studio 2017: Latest (Version 15.9)](https://azuremarketplace.microsoft.com/marketplace/apps/microsoftvisualstudio.visualstudio?tab=Overview) | Enterprise, Community | Version 15.9 | -| [Visual Studio 2015: Latest (Update 3)](https://azuremarketplace.microsoft.com/marketplace/apps/microsoftvisualstudio.visualstudio?tab=Overview) | Enterprise, Community | Version 14.0.25431.01 | +| [Visual Studio on Windows Server](https://azuremarketplace.microsoft.com/en-us/marketplace/apps/microsoftvisualstudio.visualstudiowsplustools?exp=ubp8&tab=Overview) | Enterprise, Professional, Community | VS 2022 and VS 2019 on Windows Server 2025 | -> [!NOTE] -> In accordance with Microsoft servicing policy, the originally released (RTW) version of Visual Studio 2015 has expired for servicing. Visual Studio 2015 Update 3 is the only remaining version offered for the Visual Studio 2015 product line. - -For more information, see the [Visual Studio Servicing Policy](/visualstudio/productinfo/vs-servicing-vs). +The Azure VM image offers help you create and test applications more quickly and easily on both Azure VMs and the [Microsoft Dev Box](/azure/dev-box/overview-what-is-microsoft-dev-box) service. For updates on newly added or deprecated images, see the DevBlog post [Giving our Azure marketplace images a makeover](https://devblogs.microsoft.com/visualstudio/giving-our-visual-studio-azure-marketplace-images-a-makeover/). To learn more, visit the [Visual Studio Servicing Policy](/visualstudio/productinfo/vs-servicing-vs). [Windows client for developers (Microsoft Dev Box compatible)](https://azuremarketplace.microsoft.com/en-us/marketplace/apps/microsoftvisualstudio.windowsplustools?tab=Overview), a Windows 11 Enterprise image is meant to be used as a starting point for creating custom Dev Box images, and contains additional tools and settings to optimize the developer experience. This image doesn't include Visual Studio. For Visual Studio developers, we recommend using our [Visual Studio 2022](https://azuremarketplace.microsoft.com/marketplace/apps/microsoftvisualstudio.visualstudioplustools?exp=ubp8&tab=Overview) or [Visual Studio 2019](https://azuremarketplace.microsoft.com/en-us/marketplace/apps/microsoftvisualstudio.visualstudio2019plustools?tab=Overview) Dev Box compatible images as a starting point. diff --git a/docs/toc.yml b/docs/toc.yml index 90457cdfa59..1c411c3e638 100644 --- a/docs/toc.yml +++ b/docs/toc.yml @@ -584,9 +584,6 @@ href: ide/productivity-features.md - name: Productivity shortcuts href: ide/productivity-shortcuts.md - - name: Tips for C# developers - displayName: ReSharper - href: ide/csharp-developer-productivity.md - name: Customize keyboard shortcuts href: ide/identifying-and-customizing-keyboard-shortcuts-in-visual-studio.md - name: Use the keyboard exclusively diff --git a/subscriptions/use-connected-identities.md b/subscriptions/use-connected-identities.md index 69a49dd5227..76564c58350 100644 --- a/subscriptions/use-connected-identities.md +++ b/subscriptions/use-connected-identities.md @@ -3,7 +3,7 @@ title: Use connected identities in subscriptions author: joseb-rdc ms.author: amast manager: shve -ms.date: 09/11/2024 +ms.date: 04/11/2025 ms.topic: conceptual robots: "noindex, nofollow" description: Work with connected identities such as Microsoft accounts and Microsoft Entra ID identities in Visual Studio subscriptions. @@ -49,7 +49,7 @@ Adding an alternate account to your Visual Studio subscription allows you to acc 2. Select the **Subscriptions** tab. 3. Choose **Add alternate account**. 4. Add your work or school account. -5. Use your work or school account to sign in to Azure DevOps (https://{your account}.visualstudio.com). +5. Use your work or school account to sign in to Azure DevOps. Your alternate account is added to the Visual Studio subscription, allowing both identities to utilize the benefits of the subscription that require you to sign in with the alternate account (IDE, Azure DevOps, and Azure).