/// <summary> /// 从文本文件中反射数据库连接 /// </summary> /// <param name="fileName">文本文件位置</param> /// <param name="text">数据描述文本</param> /// <returns></returns> public static DataReadAndWrite GetData(string fileName, string text) { DataReadAndWrite result = null; XmlNode tmpNode = All.Class.XmlHelp.GetXmlNode(fileName); if (tmpNode == null) { return(result); } foreach (XmlNode tmpConn in tmpNode.ChildNodes) { if (tmpConn.NodeType != XmlNodeType.Element) { continue;//注释等其他东西忽略 } Dictionary <string, string> connAttribute = All.Class.XmlHelp.GetAttribute(tmpConn); if (connAttribute == null) { All.Class.Error.Add("当前xml文件不能正确的解析"); continue;//解析有错误 } if (connAttribute.ContainsKey("Name") && connAttribute["Name"].ToUpper() == text.ToUpper()) { try { Dictionary <string, string> connStr = All.Class.XmlHelp.GetInner(tmpConn); All.Class.Reflex <DataReadAndWrite> r = new All.Class.Reflex <DataReadAndWrite>("All", connAttribute["Class"]); result = (DataReadAndWrite)r.Get(); if (result != null && connAttribute.ContainsKey("Text")) { result.Text = connAttribute["Text"]; if (!result.Login(connStr)) { All.Class.Error.Add(string.Format("{0}:数据库登陆失败,请检查数据库连接", result.Text), Environment.StackTrace); } } } catch (Exception e) { All.Class.Error.Add(e); } break; } } return(result); }
/// <summary> /// 从文本文件中反射数据库连接 /// </summary> /// <param name="fileName">文本文件位置</param> /// <param name="text">数据描述文本</param> /// <returns></returns> public static DataReadAndWrite GetData(string fileName, string text) { All.Class.DataReadAndWrite result = null; XmlNode tmpNode = All.Class.XmlHelp.GetXmlNode(fileName); foreach (XmlNode tmpConn in tmpNode.ChildNodes) { if (tmpConn.NodeType != XmlNodeType.Element) { continue; } Dictionary <string, string> connAttribute = All.Class.XmlHelp.GetAttribute(tmpConn); if (connAttribute.ContainsKey("Name") && connAttribute["Name"] == text) { try { Dictionary <string, string> connStr = All.Class.XmlHelp.GetInner(tmpConn); All.Class.Reflex <All.Class.DataReadAndWrite> r = new All.Class.Reflex <All.Class.DataReadAndWrite>("All", connAttribute["Class"]); result = (All.Class.DataReadAndWrite)r.Get(); if (result != null && connAttribute.ContainsKey("Text")) { result.Text = connAttribute["Text"]; } if (!result.Login(connStr["Address"], connStr["DataBase"], connStr["UserName"], connStr["Password"])) { All.Class.Error.Add(string.Format("{0}:数据库登陆失败,请检查数据库连接", result.Text), Environment.StackTrace); } } catch (Exception e) { All.Class.Error.Add(e); } break; } } return(result); }