public static string GetStateValueStr(string stateValue, EnumLibrary.Business business) { //为了兼容老程序,如果为Null或"",则初始化状态码。 if (stateValue == null || stateValue == string.Empty) { stateValue = StateInitialize(); } int state = 0; Type enumType = business.GetType(); int position = 0; foreach (int enumItem in Enum.GetValues(enumType)) { if ((int)business == enumItem) { position = EnumLibrary.Position[enumItem]; break; } } state = Convert.ToInt16(stateValue.Substring(position, EnumLibrary.PlaceLenth)); return(state.ToString().PadLeft(EnumLibrary.PlaceLenth, '0')); }
public static object GetStateValueEnum(string stateValue, EnumLibrary.Business business) { //为了兼容老程序,如果为Null或"",则初始化状态码。 if (stateValue == null || stateValue == string.Empty) { stateValue = StateInitialize(); } int state = 0; Type enumType = business.GetType(); int position = 0; foreach (int enumItem in Enum.GetValues(enumType)) { if ((int)business == enumItem) { position = EnumLibrary.Position[enumItem]; break; } } state = Convert.ToInt16(stateValue.Substring(position, EnumLibrary.PlaceLenth)); Type t = typeof(EnumLibrary); enumType = t.GetNestedType(business.ToString()); //foreach (string enumItem in Enum.GetNames(enumType)) //{ // if (enumItem ==Enum.Parse(enumType, state) // { //stateName = enumItem; //Enum.GetName(enumType, state); //} //} return(Enum.Parse(enumType, state.ToString())); }
public static string StateProcess(string oldState, EnumLibrary.Business business, int state) { //为了兼容老程序,如果为Null或"",则初始化状态码。 if (oldState == string.Empty || oldState == null) { oldState = "".PadLeft(EnumLibrary.StateLength, '0'); } Type enumType = business.GetType(); int position = 0; foreach (int enumItem in Enum.GetValues(enumType)) { if ((int)business == enumItem) { position = EnumLibrary.Position[enumItem]; break; } } oldState = ReplaceAt(oldState, position, state.ToString().PadLeft(EnumLibrary.PlaceLenth, '0')); return(oldState); }