JetBrains Rider provides over 2500 code inspections in all supported languages, but if this is not enough, JetBrains Rider allows you to additionally use .NET Compiler Platform (Roslyn) Analyzers.
These analyzers may be helpful for code analysis to deeper understand specific frameworks, as many teams are writing their own analyzers to provide additional tooling for the frameworks they build. For example the xUnit.net folks have a set of Roslyn-based analyzers that helps with things like making sure xUnit-specific Fact methods do not have parameters.
Roslyn analyzer support is enabled by default. You can disable and configure it on the Editor | Inspection Settings | Roslyn Analyzers page of JetBrains Rider settings CtrlAlt0S.
When Roslyn analyzer support is enabled, Rider scans for installed Roslyn analyzers and displays all code inspections from discovered analysers on the settings page where you can change severity levels in the same way as for JetBrains Rider native inspections.
You can reference the analyzer's .dll in the project's .csproj file by adding <Analyzer Include="path\to\analyzers.dll">.
All code inspection features including quick-fixes and solution-wide analysis are also available for inspections from external analyzers.
External analyzers may also run as part of the project build. If an analyzer has a default severity of warning or error, it will display the corresponding issues in the build output.
warning
If you use StyleCop.Analyzers, you can detect StyleCop rules violations with code inspections and see them in the build output, as well as use quick-fixes to enforce the rules.
Here is an example of installing and using the DisableDateTimeNow analyzer in a .NET Core web application. DisableDateTimeNow is a simple analyzer that finds usages of DateTime.Now and suggests replacing them with DateTime.UtcNow.
Gif
Cookie Settings
Our website uses some cookies and records your IP address for the purposes of accessibility, security, and managing your access to the telecommunication network. You can disable data collection and cookies by changing your browser settings, but it may affect how this website functions. Learn more.
With your consent, JetBrains may also use cookies and your IP address to collect individual statistics and provide you with personalized offers and ads subject to the Privacy Notice and the Terms of Use. JetBrains may use third-party services for this purpose. You can adjust or withdraw your consent at any time by visiting the Opt-Out page.