首页 > 解决方案 > 枚举的通用验证

问题描述

我正在尝试编码的内容:

public class Condition<TEnum>
{
    public string Operator { get; set; }

    public bool Validate()
    {
        return Enum.TryParse<TEnum>(this.Operator, true, out _);
    }
}

使用上面的代码,我得到了这个编译错误的Enum.TryParse方法:

错误 CS0453 类型“TEnum”必须是不可为空的值类型,才能将其用作泛型类型或方法“Enum.TryParse(string, bool, out TEnum)”中的参数“TEnum”

我想知道如何正确实现通用枚举验证?

标签: c#enums

解决方案


推荐阅读