I have many code styles specified in my .editorconfig file for my C# projects. I would find really useful if all of my classes could be sealed by default (When you create a new one) or at least they would show warning there class is not sealed. Is there a setting for this in the .editorconfig file ?
PS: Please dont explaint if it is/isnt a good idea, there are many such threads on SO, so it would be redundant.
There are also some .editorconfig preferences, but they work only after installing Meziantou.Analyzer Nuget package into your project. After you build your solution these sealed suggestions will show up.
[*.cs]
dotnet_diagnostic.MA0053.severity = suggestion
# Report public classes without inheritors (default: false)
MA0053.public_class_should_be_sealed = true
# Report class without inheritors even if there is virtual members (default: false)
MA0053.class_with_virtual_member_shoud_be_sealed = true
Source: https://www.meziantou.net/performance-benefits-of-sealed-class.htm
[2023] .NET 7 EDIT:
Now .NET 7 allows you to specify this warning in .editorconfig like:
# Seal internal types
dotnet_diagnostic.CA1852.severity = warning
But it has one requirement, it works only on internal classes
Source: https://learn.microsoft.com/en-us/dotnet/fundamentals/code-analysis/quality-rules/ca1852
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With