/// <summary> /// 读取From表单中的某一组值 /// </summary> /// <typeparam name="TValue"></typeparam> /// <param name="name"></param> /// <returns></returns> public static List <TValue> GetFormValues <TValue>(string name) { List <TValue> list = new List <TValue>(); string[] values = HttpContext.Current.Request.Form.GetValues(name); if (values != null) { foreach (string value in values) { list.Add(ConvertKit.Convert(value, default(TValue))); } } return(list); }
public static IDictionary <TKey, string> ToDescriptionDictionary <TKey>(Type enumType) { string cacheKey = "CACHE_ENUM_KEYVALUE_" + enumType.FullName.ToUpper() + "_" + typeof(TKey).ToString().ToUpper(); var dictionary = HttpContext.Current.Cache[cacheKey] as Dictionary <TKey, string>; if (dictionary == null) { dictionary = new Dictionary <TKey, string>(); object enumInstance = enumType.Assembly.CreateInstance(enumType.FullName); FieldInfo[] fieldInfos = enumType.GetFields(); foreach (FieldInfo fieldInfo in fieldInfos) { var descriptionAttributes = (DescriptionAttribute[])fieldInfo.GetCustomAttributes(typeof(DescriptionAttribute), true); if (descriptionAttributes.Length > 0) { TKey key = ConvertKit.Convert(fieldInfo.GetValue(enumInstance), default(TKey)); string value = descriptionAttributes[0].Description; if (!dictionary.ContainsKey(key)) { dictionary.Add(key, value); } } } HttpContext.Current.Cache.Insert(cacheKey, dictionary); } var result = new OptimizedDictionary <TKey, string>(); foreach (var kvp in dictionary) { result.Add(kvp.Key, kvp.Value); } return(result); }