What’s new in ReSharper 2023.3

ReSharper 2023.3 offers support for the latest features from C# 12. Also included are brand new Entity Relationship Diagrams and inspections for Entity-Related issues. This update brings several major improvements to performance, including optimized background code analysis and the ability to control the amount of resources allocated to code analysis. The release of ReSharper 2023.3 is also enhanced by a major update to AI Assistant.


Free 30-day trial available

AI Assistant is out of preview General Availability

JetBrains AI Assistant is now generally available with a number of new and improved features to increase your productivity. The latest set of improvements for ReSharper includes:

  • Context-aware AI chat
  • Better project awareness for AI Actions
  • AI-powered multiline code completion
  • Unit test generation
  • XML documentation generation
  • Ability to create a library of custom prompts

Use AI Assistant in ReSharper as a supplemental feature with a JetBrains AI Service subscription.

Watch the demo

C# support

With its latest release, ReSharper extends the list of supported C# 12 features, namely primary constructors, alias directives to reference any kind of type, collection expressions, interceptors, and others.

Check out this blog post to dive into the latest updates to C# support introduced in ReSharper and Rider 2023.3.

Watch the demo


ReSharper 2023.3 can now recognize and facilitate more scenarios where code analysis services can operate incrementally when interrupted by typing. This improvement is particularly beneficial for handling large files.

Reworked integration of ReSharper and Visual Studio Quick Actions

The latest update also puts you in control of the amount of resources to be allocated to solution-wide code analysis. You can now choose between Low, Moderate, and High modes of resource utilization.

Despite its name, the High mode is designed to not interfere with typing in the editor and does not degrade the IDE’s responsiveness. It gradually starts increasing the CPU usage only when code analysis is being interrupted by the code typing, maintaining a smooth typing experience all while solution-wide analysis is processing the source code in the background.

Other performance enhancements

Finding usages of types and constructors is now faster for solutions with numerous target-typed object creations (e.g. SomeType _field = new() ). This improvement also positively affects refactoring speed.

We’ve also fixed some issues associated with handling injected languages, which used to cause increased CPU usage.


Reworked UX for the Extract local function refactoring

Reworked UX for the Extract local function refactoring

We've revamped the user experience for the Extract local function refactoring. In the past, selecting a location for the new function from the list of available options was challenging, and it wasn't clear what would be affected by that choice.

With the updated UX, you'll now see a preview of the new function's signature directly in the code editor. This makes it easy to understand precisely where it will be inserted and how your choice will impact the introduced function. You can also see which variables will be transformed into parameters rather than closures and which other functions will be relocated to allow calls at the new location.

Reworked integration of ReSharper and Visual Studio Quick Actions

Reworked integration of ReSharper and Visual Studio Quick Actions

Visual Studio and ReSharper’s quick actions can complement each other well when used discerningly. With ReSharper 2023.3, you can easily leverage the power of both systems. You can now tweak the settings to either use ReSharper’s quick actions exclusively, display suggestion icons for both, or invoke all quick actions from a single access point – ReSharper’s bulb menu.

Mnemonics for Copy Code Reference

Mnemonics for Copy Code Reference

ReSharper 2023.3 introduces access keys for the Copy Code Reference action. Each code reference type in the context menu can now be selected with a single keystroke.

C++ support

In ReSharper C++ 2023.3, working with inactive code has become much easier. Code completion in currently inactive code blocks inside conditional preprocessor branches now suggests symbols from the global scope. Find Usages also got an update and now shows possible usages in inactive code and macro bodies in the dedicated results sections.

Learn more about the C++ updates: What’s New in ReSharper C++ 2023.3

Code formatting

New code formatting engine for Razor

New code formatting engine for Razor

ReSharper 2023.3 introduces a new formatting engine for Razor. It’s compatible with ReSharper’s current C# formatter, thus supporting C# language constructs introduced in recent years and most of ReSharper's new formatting options for C#. The new formatter also operates faster and is expected to have fewer issues. However, it does modify the default formatting for some code. Therefore, we have introduced an option to revert to the old formatting engine for Razor. You can find it in ReSharper’s Options under Code Editing | Razor | Code Style.

Entity Framework

Inspections targeting Entity Framework-related issues

ReSharper 2023.3 brings new inspections for usages of methods in Entity Framework-related code that could potentially produce runtime exceptions.

Watch the demo

The two cases covered by these new inspections are:

  1. Methods that produce exceptions when called on in a database context while not being convertible to SQL within Entity Framework or Entity Framework Core.
  2. Methods that produce exceptions when called on outside of a database context while being exclusively implemented as database functions.
Reworked UX for the Extract local function refactoring

Entity Relationship Diagrams

This release introduces entity relationship diagrams (ERDs). ERDs in ReSharper provide a graphic representation of the database model, the relationships between entities, as well as database model analysis insights.

Entity Framework-specific analyses in ReSharper 2023.3 will inspect your code for potential issues in the EF model, such as unlimited string property length and dependency loops. If you then invoke a context menu on such an inspection and select Show Entity Relationship Diagram, you’ll be able to investigate the issue visually.

Check out this blog post to learn more about visualizing Entity Framework relationships and the new inspections.

Unit testing

AI-powered generation of tests

Our previous release introduced the ability to easily create unit tests. The latest update to AI Assistant inside ReSharper 2023.3 gives you the option to generate the code inside unit tests, leveraging the power of LLMs.

Grammar and spelling checking

New code formatting engine for Razor

JetBrains Grazie has become ReSharper’s new built-in grammar and spelling checker. Grazie supports over 20 languages and catches natural language errors within programming languages supported by ReSharper (C#, C++, VB.NET), markup languages (HTML, XML, XAML), and comments. To add other natural languages to Grazie, go to Options | Grammar and Spelling | General in ReSharper.

Qodana Community linter for .NET

For a long time, if you wanted to run ReSharper Code Analysis outside of an IDE on your CI/CD server, you only had one option – the InspectCode tool from ReSharper Command Line Tools. Recently, Qodana has made its first steps into our lineup of .NET tools and launched the Early Access Program for Qodana Community linter for .NET.

Though Qodana is based on the same static code analysis engine as ReSharper, it offers several additional benefits:

  • Users can inspect analysis results with a signature sunburst diagram in Qodana Cloud and quickly judge their project's overall health.
  • Use the baseline to manage technical debt.

Additionally, paid Qodana linters for .NET will allow for running third-party license audits, analyzing code coverage, and detecting vulnerable dependencies.

We will not discontinue the ReSharper Command Line Tools, but from now on, the Qodana Community linter for .NET will be the preferred way to run ReSharper analysis outside of the IDE.


dotMemory Standalone on Linux and macOS dotUltimate Beta

Now, you can run the standalone version of dotMemory on Linux and macOS operating systems.


Assembly diff

The Assembly diff functionality introduced with the previous release is now able to compare NuGet packages, folders, and .zip files.

Assembly diff

The ability to compare assemblies now has more comparison options. You can choose between several diff modes (Show all, Show only differences, Show only signature differences, Show only public API differences). Additionally, you can specify if you’d like the Diff to ignore member/attribute order differences, as well as differences in nullable reference types’ annotations.

Assembly explorer

Assembly Explorer updates

  • When exploring NuGet packages in the Assembly Explorer, you’ll now be able to see all files and folders inside those NuGet packages.
  • Win32 resource nodes, including their size and type (if these can be determined), can now be viewed in the node presentation tree and the Properties pane.

Other updates:

  • The ability to decode Win32 string-table resources has now been introduced.
  • ReSharper now displays the sizes of open files inside the Properties pane for an assembly/non-assembly, files inside bundles, archives, NuGet packages, and compared assemblies, as well as Win32 resources.
  • Assembly authenticode signature validation is now available.
  • Explicit #nullable disable directives are shown in decompiled sources.


New inspections for applications targeting the ASP.NET Core framework

New inspections for applications targeting the ASP.NET Core framework

Dynamic Program Analysis has received three new inspections for applications targeting the ASP.NET Core framework. These inspections are designed to alert you to potential backend performance issues that could make your application less responsive.

Learn more

New inspections for identifying vulnerable API usages

New inspections for identifying vulnerable API usages Security

Rider 2023.3 brings a new security inspection feature designed to make published vulnerabilities more apparent and easier to understand.

The new inspections identify vulnerable NuGet packages in your project and highlight instances where vulnerable methods from these libraries are used in your code. If a vulnerability is detected, the system highlights the problematic code and offers quick actions to remedy it. These actions include recommending an update to a newer package version and offering in-depth information about the detected vulnerabilities.


Free 30-day trial available