c# - 枚举的通用验证
问题描述
我正在尝试编码的内容:
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”
我想知道如何正确实现通用枚举验证?
解决方案
推荐阅读
- python - 当有超过 2 个对时,解决合并和排序对问题
- python - 查找 Canny 边缘检测器检测到的线条的坐标
- apache-spark - 使用 Avro Schema 将 Hudi 与 Kafka 集成的问题
- bash - 如何通过cronjob将输出永久导出为环境变量?
- hibernate - Hibernate envers 5.4.x 无法解析属性
- javascript - 在编写您的 graphql.schema 文件时,基于值数组获取多个对象的正确方法是什么?
- c++ - 有没有办法在不使用 MPI_Wait 的情况下编写非阻塞 MPI 代码?
- c# - 尝试从 Access 数据库中搜索时出现 C# OleDb 异常“没有为一个或多个必需参数提供值”
- android - Android String 资源的更改不可见
- spring-data - 限制记录数