/// <summary> /// 从xml文件流中得到提供信息 /// </summary> /// <param name="reader">可读流</param> public static ProviderConfiguration GetProvider(System.IO.TextReader reader) { ProviderConfiguration providers = new ProviderConfiguration(); //providers._ProviderAttribute = filename; System.Xml.XmlDocument doc = new XmlDocument(); doc.Load(reader); providers._ProviderType = doc.DocumentElement.Attributes["providerType"] == null ? "" : doc.DocumentElement.Attributes["providerType"].Value; foreach (XmlNode node2 in doc.DocumentElement.ChildNodes) { if (node2.Name == "providers") { providers.GetProviders(node2); } } return(providers); }
public static ProviderConfiguration GetProvider(string filename) { if (_cache.ContainsKey(filename)) { return(_cache[filename]); } ProviderConfiguration providers = null; if (System.IO.File.Exists(filename)) { lock (_cache) { providers = GetProvider(System.IO.File.OpenRead(filename)); _cache.Add(filename, providers); } } //} return(providers); }
/// <summary> /// 从xml文件流中得到提供信息 /// </summary> /// <param name="reader">可读文本流</param> /// <param name="group">组</param> /// <returns></returns> public static ProviderConfiguration GetProvider(System.IO.TextReader reader, string group) { ProviderConfiguration providers = new ProviderConfiguration(); //providers._ProviderAttribute = filename; System.Xml.XmlDocument doc = new XmlDocument(); doc.Load(reader); XmlNodeList list = doc.DocumentElement.SelectNodes(String.Format("providers[@group='{0}']", group)); providers._ProviderType = doc.DocumentElement.Attributes["providerType"] == null ? "" : doc.DocumentElement.Attributes["providerType"].Value; foreach (XmlNode node2 in list) { if (node2.Name == "providers") { if (node2.Attributes["providerType"] != null) { providers._ProviderType = node2.Attributes["providerType"].Value; } providers.GetProviders(node2); } } return(providers); }
public static ProviderConfiguration GetProvider(string filename) { if (_cache.ContainsKey(filename)) { return(_cache[filename]); } ProviderConfiguration providers = null; if (System.IO.File.Exists(filename)) { lock (_cache) { providers = GetProvider(System.IO.File.OpenRead(filename)); _cache.Add(filename, providers); } } else { throw new System.IO.FileNotFoundException("没有找到文件", filename); } //} return(providers); }
public ProviderHashtable(ProviderConfiguration pr) { this.pr = pr; }