CA1419: Provide a parameterless constructor that is as visible as the containing type for concrete types derived from 'System.Runtime.InteropServices.SafeHandle'
Property | Value |
---|---|
Rule ID | CA1419 |
Title | Provide a parameterless constructor that is as visible as the containing type for concrete types derived from 'System.Runtime.InteropServices.SafeHandle' |
Category | Interoperability |
Fix is breaking or non-breaking | Non-breaking |
Enabled by default in .NET 9 | As suggestion |
Cause
A concrete SafeHandle type requires a parameterless constructor that is at least as visible as the containing type.
Rule description
Providing a public parameterless constructor for a type derived from SafeHandle enables better performance and usage with source-generated interop solutions.
How to fix violations
Add a parameterless constructor to your type.
When to suppress warnings
Do not suppress a warning from this rule.
See also
Tee yhteistyötä kanssamme GitHubissa
Tämän sisällön lähde on GitHubissa, jossa voit myös luoda ja tarkastella ongelmia ja pull-pyyntöjä. Katso lisätietoja osallistujan oppaasta.