Tool selection guide
When C# semantic tools help
Choose tools for C# navigation, diagnostics, analysis, edits, and refactors. Start with the task below.
Choose a task
Resolve a symbol
Identify the declaration before you follow or change it.
- Results carry an opaque
symbolKeyfor later relationship queries. - This distinguishes overloads, aliases, similarly named types, and text matches.
Follow code relationships
Ask about references, implementations, overrides, callers, or outgoing calls.
- These tools start from compiler-resolved symbol identity.
- Use them when a matching word does not prove a code relationship.
Inspect diagnostics
Read file, project, or solution diagnostics in a structured form.
- Filter and page diagnostic results.
- Group diagnostic hotspots before you inspect individual messages.
Map impact and dependencies
Collect direct or bounded transitive evidence before a change.
- Impact summaries combine references, callers, implementations, and overrides.
- Project and type graphs expose declared dependency relationships.
Preview a refactor
Inspect proposed symbol or source changes before writing them.
- Use
applyChanges: falsewhen the tool supports a preview. Defaults differ by operation; check its reference. - Inspect the diff before application. Run diagnostics and relevant tests after the change.
Inspect external APIs and packages
Connect referenced assemblies and packages to their local use.
- Inspect external definitions without claiming that documentation matches local use.
- Map a package or assembly to concrete source references before changing it.
Scope and related tools
- Glider analyzes loaded C# projects. Use Scout for repository-wide file and text searches.
- Use the .NET CLI for builds and tests, or GliderTrace to retain runtime evidence.