你正试图解决错误的问题.这对于简单的枚举来说太复杂了.将枚举重构为类并使用比较接口.
如果这条路线是开放的,你怎么看待这可以通过一个类来实现:
public class TimeFrame: IComparable { private int days; public int Days { set { days = value; } } public int CompareTo(object other) { //see this for implementation -- http://msdn.microsoft.com/en-us/library/system.icomparable.aspx#Mtps_DropDownFilterText } public string Description { get code to return the description string , ie "1-3 months" } }