Qodana 2022.3 Help

Qodana for .NET

official project

Qodana for .NET is based on Rider and provides static analysis for .NET projects. It brings all the smarts from Rider, which help you:

  • Detect anomalous code and probable bugs

  • Eliminate dead code

  • Highlight spelling problems

  • Improve overall code structure

  • Introduce coding best practices

Analyze a project locally

Install project dependencies

Qodana for .NET is suitable for analyzing .NET Core projects and provides the following SDK versions:

  • 3.1.425

  • 6.0.403

  • 7.0.100

All SDK versions are stored in the /usr/share/dotnet/sdk directory of the Qodana for .NET container filesystem.

In case a project requires a different version of the SDK, you can set it up before running the analysis using the bootstrap field in the qodana.yaml file. For example, this command will install the required version of the SDK that is specified in the global.json file and located in the root of your project:

bootstrap: curl -fsSL https://dot.net/v1/dotnet-install.sh | bash -s -- --jsonfile /data/project/global.json -i /usr/share/dotnet

Run analysis

By default, Qodana tries to locate and employ a single solution file, or, if no solution file is present, it tries to find a project file. If your project contains multiple solution files, you need to specify the exact file name using the --property option. For example, to make Qodana always analyze the MySolution.sln solution file, you can use:

--property=qodana.net.solution=MySolution.sln

Alternatively, you can specify the solution file name in the qodana.yaml file using the solution option:

dot-net: solution: MySolution.sln

If you project contains no solution files and multiple project files, you need to specify the exact file name of a project. For example, for the MyProject.csproj project file it can be:

--property=qodana.net.project=MyProject.csproj

Alternatively, you can specify the project file name in the qodana.yaml file using the project option:

dot-net: project: MyProject.csproj

Qodana provides two options for local analysis of your code. Qodana CLI is the easiest option to start. Alternatively, you can use the Docker command from the Docker image tab.

Assuming that you have already installed Qodana CLI on your machine, you can run this command in the project root directory:

qodana scan -l jetbrains/qodana-dotnet:2022.3-eap --show-report

To start, pull the image from Docker Hub (only necessary to get the latest version):

docker pull jetbrains/qodana-dotnet:2022.3-eap

Start local analysis with source-directory pointing to the root of your project:

docker run --rm -it \ -v <source-directory>/:/data/project/ \ -p 8080:8080 jetbrains/qodana-dotnet:2022.3-eap --show-report

Open http://localhost:8080 in your browser to examine inspection results. Here, you can also reconfigure the analysis, see the User interface overview section for details. When done, you can stop the web server by pressing Ctrl-C in the console.

Next steps

Last modified: 04 November 2022