/// <summary> /// 读取XML参数 /// </summary> /// <param name="Name">参数名</param> /// <param name="DefaultValue">默认值</param> /// <returns></returns> public object ViewGlobalSetting(String Name, object DefaultValue) { String o = String.Empty; if (!String.IsNullOrEmpty(Name) && GlobalValues != null && GlobalValues.Count > 0) { KeyValueEntity item = GlobalValues.Find(r1 => r1.Key == Name); if (item != null && item.Key == Name) { o = item.Value.ToString(); } } return(!String.IsNullOrEmpty(o) ? ConvertTo.FormatValue(o, DefaultValue.GetType()) : DefaultValue); }
public T ViewSetting <T>(String Name, T DefaultValue, List <KeyValueEntity> TabValues, List <SettingEntity> XmlSettings) { //取出所需要的值 T o = DefaultValue; if (TabValues.Exists(r => r.Key == Name)) { o = (T)ConvertTo.FormatValue(TabValues.Find(r => r.Key == Name).Value.ToString(), DefaultValue.GetType()); } else if (XmlSettings.Exists(r => r.Name == Name)) { o = (T)ConvertTo.FormatValue(XmlSettings.Find(r => r.Name == Name).DefaultValue, DefaultValue.GetType()); } return(o); }
/// <summary> /// 返回实体列表信息 /// </summary> /// <typeparam name="T"></typeparam> /// <returns></returns> public List <T> ToList <T>() where T : new() { List <T> list = new List <T>(); if (_xmlDoc != null) { //找出对应路径下的节点,遍历节点 XmlNodeList Nodelist = ToNodeList(typeof(T)); if (Nodelist != null && Nodelist.Count > 0) { Type t = typeof(T); PropertyInfo[] Propertys = t.GetProperties(); //遍历节点 foreach (XmlNode node in Nodelist) { T tItem = new T(); Boolean isTrue = false; //遍历字段 foreach (PropertyInfo Property in Propertys) { String ColumnName = Property.Name; if (node[ColumnName] != null && !String.IsNullOrEmpty(node[ColumnName].InnerText.Trim())) { object o = ConvertTo.FormatValue(node[ColumnName].InnerText.Trim(), Type.GetType(Property.PropertyType.FullName)); t.GetProperty(ColumnName).SetValue(tItem, o, null); isTrue = true; } } //增加到列表 if (isTrue) { list.Add(tItem); } } } } return(list); }