我正在寻找一个开源库或用于在 .Net 中使用枚举类型的示例。除了人们用于 Enum 的标准扩展(TypeParse 等)之外,我还需要一种方法来执行操作,例如返回给定枚举值的 Description 属性值或返回具有 Description 属性值的枚举值匹配给定的字符串。
例如:
//if extension method
var race = Race.FromDescription("AA") // returns Race.AfricanAmerican
//and
string raceDescription = Race.AfricanAmerican.GetDescription() //returns "AA"
前几天我读了这篇关于使用类而不是枚举的博客文章:
http://www.lostechies.com/blogs/jimmy_bogard/archive/2008/08/12/enumeration-classes.aspx http://www.lostechies.com/blogs/jimmy_bogard/archive/2008/08/12/enumeration-classes.aspx
提议使用抽象类作为枚举类的基础。基类具有相等、解析、比较等功能。
使用它,您可以为枚举创建类,如下所示(示例取自文章):
public class EmployeeType : Enumeration
{
public static readonly EmployeeType Manager
= new EmployeeType(0, "Manager");
public static readonly EmployeeType Servant
= new EmployeeType(1, "Servant");
public static readonly EmployeeType AssistantToTheRegionalManager
= new EmployeeType(2, "Assistant to the Regional Manager");
private EmployeeType() { }
private EmployeeType(int value, string displayName) : base(value, displayName) { }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)