LinqContraband.Scan
5.11.0
There is a newer version of this package available.
See the version list below for details.
See the version list below for details.
dotnet tool install --global LinqContraband.Scan --version 5.11.0
This package contains a .NET tool you can call from the shell/command line.
dotnet new tool-manifest
dotnet tool install --local LinqContraband.Scan --version 5.11.0
This package contains a .NET tool you can call from the shell/command line.
#tool dotnet:?package=LinqContraband.Scan&version=5.11.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
nuke :add-package LinqContraband.Scan --version 5.11.0
The NuGet Team does not provide support for this client. Please contact its maintainers for support.
LinqContraband.Scan
Scan any .NET solution for EF Core LINQ problems without adding a package to it.
dnx LinqContraband.Scan # .NET 10 SDK, no install step
dnx LinqContraband.Scan -- MyApp.sln -o results.sarif
dotnet tool install -g LinqContraband.Scan # .NET 8 or 9 SDK
linqcontraband-scan MyApp.sln
The scanner builds your solution with the LinqContraband analyzers injected, then prints the rules that fired, how often, the most affected files and a link to each rule's page. It also writes a SARIF 2.1.0 file you can upload to GitHub code scanning. Your project files are not changed.
Output looks like this:
LinqContraband found 14 problems (5 rules, 6 files).
Rule Severity Count Title
LC007 Warning 6 N+1 Problem: Database execution inside loop
LC009 Info 4 Performance: Missing AsNoTracking() in Read-Only path
...
To keep the checks on in the editor and in CI, add the analyzer package: dotnet add package LinqContraband.
Full guide: https://georgepwall1991.github.io/LinqContraband/ef-core-query-scanner/
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
This package has no dependencies.