C# LINQ 判断枚举是否有值 - 使用 Enum.IsDefined 方法
"使用 LINQ 判断枚举是否有值传来时,可以使用 Enum.IsDefined 方法。该方法接受两个参数:枚举类型和要判断的值。如果传入的值存在于给定的枚举类型中,则返回 true;否则返回 false。\n\n以下是使用 LINQ 判断枚举是否有值传来的示例代码:\n\ncsharp\nusing System;\nusing System.Linq;\n\npublic enum MyEnum\n{\n Value1,\n Value2,\n Value3\n}\n\npublic class Program\n{\n public static void Main(string[] args)\n {\n MyEnum myEnumValue = MyEnum.Value2;\n\n bool hasValue = Enum.GetValues(typeof(MyEnum))\n .Cast<MyEnum>()\n .Any(e => e == myEnumValue);\n\n Console.WriteLine(hasValue);\n }\n}\n\n\n在上述代码中,我们使用 Enum.GetValues 方法获取枚举类型的所有值,并将其转换为 IEnumerable<MyEnum> 类型。然后使用 LINQ 的 Any 方法判断传入的枚举值是否在这个序列中,最后将结果打印出来。\n\n输出结果将会是 True,因为 MyEnum.Value2 是存在于 MyEnum 枚举类型中的一个值。\n\n
原文地址: https://www.cveoy.top/t/topic/qdsf 著作权归作者所有。请勿转载和采集!