Add new roslyn analyzer tutorial and update the existing one if applicable
- Dominant language
- No language data
- Stars
- 4.8k
- Forks
- 6.1k
- Avg merge
- 15h 21m
- Merged PRs (30d)
- 370
Description
Currently, there is a single analyzer tutorial, that's based on syntax. There should be one tutorial based on syntax, and other one based on semantics (IOperation APIs).
- First, evaluate if the current analyzer in tutorial can be rewritten as IOperation (which is always preferred if possible)
- If it can be rewritten as IOperation, then the new tutorial would be based on syntax.
- If it cannot be rewritten as IOperation, then add new tutorial based on IOperation.
Both tutorials should have a note that relying on syntax should only be done if it cannot be written usnig IOperation, with clear reasoning why IOperation is preferred (mainly performance (AFAIK), being language-agnostic, being more reliable, and being future proof if the language introduces new syntaxes)
---
#### Document Details
⚠ *Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.*
* ID: 6e3fc905-7aa1-7f5e-9bfe-fbcef461ad5e
* Version Independent ID: a286e20b-1e43-dc57-e0fb-5a9dee7ec3f6
* Content: [Tutorial: Write your first analyzer and code fix](https://docs.microsoft.com/en-us/dotnet/csharp/roslyn-sdk/tutorials/how-to-write-csharp-analyzer-code-fix)
* Content Source: [docs/csharp/roslyn-sdk/tutorials/how-to-write-csharp-analyzer-code-fix.md](https://github.com/dotnet/docs/blob/main/docs/csharp/roslyn-sdk/tutorials/how-to-write-csharp-analyzer-code-fix.md)
* Product: **dotnet-csharp**
* Technology: **csharp-roslyn**
* GitHub Login: @BillWagner
* Microsoft Alias: **wiwagn**
Contributor guide
Assessment
This issue has not been assessed yet.