Add accessibility modifiers (IDE0040)

Property Value
Rule ID IDE0040
Title Add accessibility modifiers
Category Style
Subcategory Language rules (modifier preferences)
Applicable languages C# and Visual Basic
Introduced version Visual Studio 2017
Options dotnet_style_require_accessibility_modifiers


This style rule concerns requiring accessibility modifiers in declarations.


The option value specifies the preferences for required accessibility modifiers.

For information about configuring options, see Option format.


Property Value Description
Option name dotnet_style_require_accessibility_modifiers
Option values always Prefer accessibility modifiers to be specified.
for_non_interface_members Prefer accessibility modifiers except for public interface members.
never Do not prefer accessibility modifiers to be specified.
omit_if_default Prefer accessibility modifiers except if they are the default modifier.
Default option value for_non_interface_members
// dotnet_style_require_accessibility_modifiers = always
// dotnet_style_require_accessibility_modifiers = for_non_interface_members
class MyClass
    private const string thisFieldIsConst = "constant";

// dotnet_style_require_accessibility_modifiers = never
class MyClass
    const string thisFieldIsConst = "constant";

Suppress a warning

If you want to suppress only a single violation, add preprocessor directives to your source file to disable and then re-enable the rule.

#pragma warning disable IDE0040
// The code that's violating the rule is on this line.
#pragma warning restore IDE0040

To disable the rule for a file, folder, or project, set its severity to none in the configuration file.

dotnet_diagnostic.IDE0040.severity = none

To disable all of the code-style rules, set the severity for the category Style to none in the configuration file.

dotnet_analyzer_diagnostic.category-Style.severity = none

For more information, see How to suppress code analysis warnings.

See also