Does the naming convention for ENUMs in C# usually have everything in UPPERCASE?

One should use Pascal case when they are typing enum types and values. This looks like

public enum Ati
{
    Two = 0,
    Three = 1,
    Five = 2,
}

According to Microsoft:

   Identifier      |   Case    |   Example
--------------------------------------------
Enumeration type   |  Pascal   |  ErrorLevel      
Enumeration values |  Pascal   |  FatalError

The only thing that you should make all caps like that are constant/final variables.

When you have local variables you should always use camel case.

thisIsCamelCasedVariable = "ya baby";

More about enums: https://msdn.microsoft.com/en-us/library/4x252001(v=vs.71).aspx

More about naming conventions C#: https://msdn.microsoft.com/en-us/library/ms229043%28v=vs.100%29.aspx


As already pointed out by Jamins answer:
In C# enumerations and their values should be named in PascalCasing

When you defining a 'simple' enum, for example just for enumerating the seasons of the year, you should use the singular, like:

public enum SeasonOfTheYear
{
    Spring = 0,
    Summer = 1,
    Autumn = 2,
    Winter = 3
}

If you want to define a so called 'flag enum', for example to define file permissions. You should use the plural, like:

[Flags]
public enum FilePermissions
{
    None = 0,
    X = 1,
    W = 2,
    R = 4
}

More Do and Don'ts from .NET Design-Guidelines - Names Of Classes, Structs and Interfaces:

Naming Enumerations

Names of enumeration types (also called enums) in general should follow the standard type-naming rules (PascalCasing, etc.). However, there are additional guidelines that apply specifically to enums.

✓ DO use a singular type name for an enumeration unless its values are bit fields.

✓ DO use a plural type name for an enumeration with bit fields as values, also called flags enum.

X DO NOT use an "Enum" suffix in enum type names.

X DO NOT use "Flag" or "Flags" suffixes in enum type names.

X DO NOT use a prefix on enumeration value names (e.g., "ad" for ADO enums, "rtf" for rich text enums, etc.).


For more information: C# Reference - Enumeration types


But these are just naming conventions and no laws. So not everyone sticks to it. So I suggest, within a project team or company you should commit yourself to a uniform naming convention. But you should not only define it, you also have to communicate it, so that it is clear to all developers.

Tags:

C#

Enums