private static void InitData() { innerEnums = new System.Collections.Generic.Dictionary <System.Int32, ProductBarCodeKindEnum>(); rcv = new ProductBarCodeKindEnum(0, "Rcv"); innerEnums.Add(0, rcv); ship = new ProductBarCodeKindEnum(1, "Ship"); innerEnums.Add(1, ship); rMR = new ProductBarCodeKindEnum(2, "RMR"); innerEnums.Add(2, rMR); empty = new ProductBarCodeKindEnum(-1, ""); innerEnums.Add(-1, empty); }
/// <summary> /// Get ProductBarCodeKindEnum By Value /// </summary> public static ProductBarCodeKindEnum GetFromValue(System.Int32 value) { //仅返回空的方法不是太好,在用的时候,枚举值可能就会设置一个枚举项中没有的,或者枚举值被删除.? if (!innerEnums.ContainsKey(value)) { lock (lockobj) { if (!innerEnums.ContainsKey(value)) { ProductBarCodeKindEnum newValue = new ProductBarCodeKindEnum(value, ""); innerEnums.Add(value, newValue); return(newValue); } } } return(innerEnums[value]); }