/// <summary> /// 将实体类存入config /// </summary> /// <param name="enity"></param> public void SetValue<T>(T enity) where T : class { System.Xml.XmlDocument xDoc = new System.Xml.XmlDocument(); xDoc.Load(HttpContext.Current.Server.MapPath("~/xxxx.config")); System.Xml.XmlNode xNode; System.Xml.XmlElement xElem1; System.Xml.XmlElement xElem2; xNode = xDoc.SelectSingleNode("//appSettings"); System.Reflection.PropertyInfo[] properties = enity.GetType().GetProperties(System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.Public); foreach (System.Reflection.PropertyInfo item in properties) { string name = item.Name; string value = (string)item.GetValue(enity, null); if (item.PropertyType.IsValueType || item.PropertyType.Name.StartsWith("String")) { xElem1 = (System.Xml.XmlElement)xNode.SelectSingleNode("//add[@key='" + name + "']"); if (xElem1 != null) xElem1.SetAttribute("value", value); else { xElem2 = xDoc.CreateElement("add"); xElem2.SetAttribute("key", name); xElem2.SetAttribute("value", value); xNode.AppendChild(xElem2); } } } xDoc.Save(HttpContext.Current.Server.MapPath("~/xxxx.config")); }