首页 > 编程语言 >C# 智能枚举

C# 智能枚举

时间:2023-06-11 18:22:55浏览次数:53  
标签:C# PriorityStatus 智能 枚举 Critical static ProjectStatus public

public class PriorityStatus : SmartEnum<PriorityStatus>
{
  public static readonly PriorityStatus Backlog = new(nameof(Backlog), 0);
  public static readonly PriorityStatus Critical = new(nameof(Critical), 1);

  protected PriorityStatus(string name, int value) : base(name, value) { }
}

客户端使用:

  public ProjectStatus Status => _items.All(i => i.IsDone) ? ProjectStatus.Complete : ProjectStatus.InProgress;

  

 

标签:C#,PriorityStatus,智能,枚举,Critical,static,ProjectStatus,public
From: https://www.cnblogs.com/friend/p/17473334.html

相关文章

  • [Javascript] Rendering process
     DOM(DocumnetObjectModel)Tree:Whenawebpageisloaded,thebrowserreadstheHTMLandbuildstheDOMtree.TheDOMisatree-likestructurethatrepresentsthecontentofthewebpage.EachHTMLtagbecomesanodeinthetree,andthesenodescanh......
  • C++面试题
    1、当使用C++编写代码时,有一个常见的问题是如何在子类中调用父类的构造函数。下面是一个相关的C++面试题:题目:假设有一个基类Animal,其中包含一个带参数的构造函数和一个公共成员函数display()。请编写一个派生类Dog,继承自Animal,并实现自己的构造函数和display()函数。要求:Dog......
  • Codeforces Round 877 (Div. 2)
    Preface补题这场补题的时候直接成腐乳了,A题挂两发,B题挂两发,C题挂一发是真的抽象虽然D是个套路题看一眼就秒了,但如果真的比赛时候打真要罚时爆炸了的说后面的EF还是做不来啊岂可修,不过都很有启发性让人感觉神清气爽,不像傻逼蓝桥杯花钱买罪受A.BlackboardList刚开始想错方......
  • m基于FPGA的通信数据帧加扰解扰verilog实现,包含testbench
    1.算法仿真效果本系统进行了两个平台的开发,分别是:Vivado2019.2Quartusii18.0+ModelSim-Altera6.6dStarterEdition其中Vivado2019.2仿真结果如下:Quartusii18.0+ModelSim-Altera6.6dStarterEdition的测试结果如下:2.算法涉及理论知识概要现代通信系统中,为了保证数据......
  • Python 解析配置模块之ConfigParser详解
      yield的英文单词意思是生产,刚接触Python的时候感到非常困惑,一直没弄明白yield的用法。只是粗略的知道yield可以用来为一个函数返回值塞数据,比如下面的例子:defaddlist(alist):foriinalist:yieldi+1取出alist的每一项,然后把i+1塞进去。然后通过......
  • mac下gitLab、sourceTree的配合使用
         1、认识一下gitLab这个版本管理工具。说到版本管理工具,大家会想到svn,git和svn还是有差别的。svn是集中化的版本控制系统,只有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。git是分布式......
  • linux sort,uniq,cut,wc命令详解
        sortsort命令对File参数指定的文件中的行排序,并将结果写到标准输出。如果File参数指定多个文件,那么sort命令将这些文件连接起来,并当作一个文件进行排序。sort语法[root@www~]#sort[-fbMnrtuk][fileorstdin]选项与参数:-f:忽略大小写的差异,例如A与......
  • linux命令行elasticsearch查询工具es2unix
    当想在linux的命令行中查看elasticsearch的状态时,可以用es2unix这个工具,插件地址: https://github.com/elasticsearch/es2unix。它是elasticsearch官方推出的,可以通过命令来查看es的各种状态,安装方法curl-sdownload.elasticsearch.org/es2unix/es>/bin/eschmod+x/bin/es这......
  • mac下安装Mysql5.7遇到默认密码的大坑
    哈哈,当时我装5.7也遇到过这样的情况 安装的过程很简单,就直接到官方下mysqldmg,一路下一步就可以装完.. MacMysqldmg下载地址,http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.10-osx10.10-x86_64.dmg但是带来的问题是,默认密码不为空…mysql-uroot-p登陆不进去…直接......
  • Mac下添加java环境变量
    发现一个坑:最近发现有同事按照本文方式配置jdk环境变量一直不成功,后来发现他是使用了“Oh-My-Zsh”,配置文件的路径不是/etc/profile或~/.bash_profile,它有自己的配置文件,所以还是推荐大家使用mac自带的终端或者iTerm2来配置。————————正文开始——————-Mac下添加java环......