ReSharper是一个JetBrains公司出品的著名的代码生成工具，是Visual Studio里面的一个插件。它包括一系列丰富的能大大增加C#和Visual Basic .NET开发者生产力的特征。使用ReSharper，你可以进行深度代码分析，智能代码协助，实时错误代码高亮显示，解决方案范围内代码分析，快速代码更正，一步完成代码格式化和清理，业界领先的自动代码重构，高级的集成单元测试方案，和强大的解决方案内导航和搜索。实质上，ReSharper特征可用于C#，VB.NET，XML，ASP.NET，XAML，和构建脚本。ReSharper还为C#和VB.NET提供了增强的交叉语言功能，它使开发者可以有效的控制.net混合项目。
MSDN VisualStudio Tools视频介绍：
ReSharper是一款由jetbrains开发的针对C#, VB.NET, ASP.NET, XML,和XAML的编辑器。沿袭了jetbrains开发工具一贯的优良传统，ReSharper拥有高度智能的纠错，30多种高级代码重构功能，方便的单元测试工具，快速导航、检索，以及一键格式化代码，自动代码生成和模板功能等很多特性。
Enhanced C# support
Take full advantage of C# 8 with ReSharper’s enhanced support:
Supports the latest changes in indices and ranges such as indexable and rangeable types.
The context action Add range check now supports indexing bySystem.Index/System.Range and produces correct checks.
Supports unmanaged generic structs.
Two new inspections, ‘Convert switch statement to switch expression’ and ‘Convert chain of ternary expressions to switch expression’, with a corresponding ‘Convert to switch expression’ quick-fix.
You asked and we delivered: the context action Convert concatenation to interpolation can now be applied in scope.
Faster startup times
Borrowing from Rider, we’ve started using the MSBuild-based project model instead of the Visual Studio COM API. This will help optimize solution loading times as we’ve minimized the use of COM API, which locks the UI thread.
In addition, we’ve updated the Performance Guide page. It has a new Windows Defender section and descriptions for all performance tips, which describe what exactly will be done after a suggestion is applied.
Navigations and Find Usages
In this release, Find Usages starts using the data from Solution Wide Error Analysis to gather the results. If you enable SWEA for your solution, Find Usagewill show you results significantly faster.
We’ve added a couple of small improvements to Navigation and hope you will find them useful:
You can search in a file right through the “Go to File Member” dialog. The list of results will have the names of all matching members and all the places where the search string appears in the file.
In the Go To Text results window, you can now filter out the comment lines if you are not interested in looking for occurrences in comment strings.
Debugger Data Tips
ReSharper 2019.2 brings several updates to the debugger data tips:
We’ve added a couple of new toggles: implicit function evaluation and auto evaluate property.
They respect the setting “Enable property evaluation and other implicit function calls” and can evaluate property values on demand.
Code style & code formatter
To improve C# 8.0 support, we added new formatting options for switchexpressions. Support for .editorconfig, StyleCop.Settings, and .clang-format now performs better and is switched on by default for highlighting and Solution Wide Error Analysis. You can also edit EditorConfig properties right inside the Options page.
Support for “Per-Monitor DPI Awareness” mode
ReSharper Ultimate 2019.2 offers better support for the “Per-Monitor DPI Awareness” mode introduced in Visual Studio 2019. We know some ReSharper users previously opted to disable Optimize rendering for screens with different pixel densities (via Tools | Options | Environment | General) because of the rendering issue we had with the ReSharper tool windows. Please enable it again and check out how it looks. Note there might still be places where you can experience some glitches.
Parameter name hints have performance improvements and new heuristics.
A new tooltip with the keyword description is available in the IL Viewer.
The Advanced symbols options dialog under ReSharper | Options | Tools | External Sources now supports relative paths.
The Assembly Explorer tool window now has a ‘Summary’ property on the “Properties” tab and an unmanaged (win32) resources subtree.
Unreal Engine support
In the previous release, we began to work towards better support for UE4-specific Remote Procedure Calls. Now, we've updated the Rename and Change Signature refactorings to work correctly on RPC functions. A few new code analysis checks are also available for UE4-based code, especially targeting the missing or incorrectly set UE4 reflection macros.
Following on from adding code completion for reflection specifiers in v2019.1, we've now added built-in documentation for them. It is shown in the Quick Documentation popup (CtrlQ) when the caret is located on a specifier.
Faster indexing for C++ projects
The new preprocessor implementation used inside ReSharper C++ has sped up the indexing on typical solutions, like LLVM and Unreal Engine, by 15-25%.
dotMemory console profiler improvements
dotMemory 2019.2 stops supporting remote profiling. To offer you an adequate replacement, we significantly improved the dotMemory console profiler:
The console profiler gets commands to profile all types of applications including .NET Core applications, IIS Express-hosted applications, Windows services, and others.
The --trigger-on-activation argument allows taking a memory snapshot right after this becomes possible. This feature can be helpful in case you want to take a baseline snapshot and use it for comparison.