/// <summary> /// 将type对象加入缓存中 /// </summary> /// <param name="type"></param> internal static void Store(Type type) { lock (DATA_DICT) { if (!IsCached(type)) { RequestEntityInfo r = RequestEntityProvider.Generate(type); DATA_DICT.Add(type.FullName, r); } } }
/// <summary> /// 通过反射获取type类型的必要信息 /// </summary> /// <param name="type"></param> /// <returns></returns> internal static RequestEntityInfo Generate(Type type) { RequestEntityInfo result = new RequestEntityInfo { RequestType = type, PiArray = type.GetProperties() }; for (int i = 0; i < result.PiArray.Length; i++) { RequestParameterAttribute attritube = Attribute.GetCustomAttribute(result.PiArray[i], typeof(RequestParameterAttribute)) as RequestParameterAttribute; if (attritube != null) { string propertyName = result.PiArray[i].Name; result.RequestParameterDict.Add(propertyName, attritube); result.RequestIndexDict.Add(propertyName, i); continue; } } return result; }
/// <summary> /// 通过反射获取type类型的必要信息 /// </summary> /// <param name="type"></param> /// <returns></returns> internal static RequestEntityInfo Generate(Type type) { RequestEntityInfo result = new RequestEntityInfo { RequestType = type, PiArray = type.GetProperties() }; for (int i = 0; i < result.PiArray.Length; i++) { RequestParameterAttribute attritube = Attribute.GetCustomAttribute(result.PiArray[i], typeof(RequestParameterAttribute)) as RequestParameterAttribute; if (attritube != null) { string propertyName = result.PiArray[i].Name; result.RequestParameterDict.Add(propertyName, attritube); result.RequestIndexDict.Add(propertyName, i); continue; } } return(result); }