C# 中的枚举是一项强大的功能,可用于定义一组命名的整型常量。虽然枚举本身非常有用,但您可以使用多种技术和最佳实践在功能、可读性和可维护性方面将它们提升到一个新的水平。以下是一些提示 flags 属性 如果枚举表示一组标志,请考虑使用该属性。这允许您使用按位 OR 运算组合枚举值,使其更加通用。[Flags]
[Flags]
public enum FileAccessEnum
{
Read = 1,
Write = 2,
Execute = 4
}
FileAccessEnum _FileAccessEnum = FileAccessEnum.Read | FileAccessEnum.Write;
Console.WriteLine(_FileAccessEnum);
输出
Read, Write 字符串表示形式 通过使用属性或自定义方法改进枚举值的字符串表示形式。Description
public enum Status
{
[Description("Active Status")]
Active,
[Description("Inactive Status")]
Inactive,
[Description("Pending Status")]
Pending,
[Description("InProgress Status")]
InProgress,
}
var _StatusDes = GetDescriptions
foreach (var item in _StatusDes)
{
Console.WriteLine(item);
}
输出
Active Status Inactive Status Pending Status InProgress Status
数值 为枚举成员分配显式数值,以便更好地控制其值。
public enum WeekDays
{
Sunday = 1,
Monday = 2,
Tuesday = 3,
Wednesday = 4,
Thursday = 5,
Friday = 6,
Saturday = 7,
}
foreach (var item in Enum.GetValues(typeof(WeekDays)))
{
Console.WriteLine($"{item} == {(int)item}");
}