public T GetUrlParameterValue <T>(string parameterName) { object v; if (RouteHelper.TryGetRouteValueOfCurrentRoute(parameterName, out v) && v != null) { return(DataConvertor.GetValue <T>(v, parameterName, null)); } return(default(T)); }
/// <summary> /// 解析View的非强类型Model上的属性 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="model"></param> /// <param name="propertyName"></param> /// <returns></returns> public T ParseModel <T>(object model, string propertyName) { object v = null; try { v = DataBinder.Eval(model, propertyName); } catch { return(default(T)); } return(DataConvertor.GetValue <T>(v, propertyName, null)); }
public static T GetPropertyValue <T>(object obj, string propertyName) { object v = null; try { v = DataBinder.Eval(obj, propertyName); } catch { return(default(T)); } return(DataConvertor.GetValue <T>(v, propertyName, null)); }
public C ExecuteFirstColumn <T, C>() where C : ICollection <T>, new() { C list = new C(); using (DbDataReader reader = ExecuteDataReader()) { while (reader.Read()) { list.Add(DataConvertor.GetValue <T>(DataMapper.ConvertIfEnum(reader[0], typeof(T)), null, null)); } reader.Close(); } return(list); }
/// <summary> /// 通过QueryString的key获取相应的value,并转换成所需的类型 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="key"></param> /// <returns></returns> public static T ParseQueryStringVal <T>(string key) { if (string.IsNullOrWhiteSpace(key)) { return(default(T)); } string val = HttpContext.Current.Request.QueryString.Get(key); if (string.IsNullOrWhiteSpace(val)) { return(default(T)); } try { return(DataConvertor.GetValue <T>(val, key, null)); } catch (Exception) { return(default(T)); } }
/// <summary> /// 执行返回第一行第一列的值,并自动转换为对应的类型,如果是泛型值且为空则会返回null /// </summary> /// <typeparam name="T"></typeparam> /// <returns></returns> public T ExecuteScalar <T>() { object v = DataMapperHelper.ConvertIfEnum(ExecuteScalar(), typeof(T)); return(DataConvertor.GetValue <T>(v, null, null)); }