/// <summary> /// Returns the default configuration. /// </summary> /// <returns></returns> internal static EntityGateCoreConfig GetFirstConfig() { lock (locker) { EntityGateCoreConfig rslt = null; if (configs != null) { rslt = configs.FirstOrDefault(); } return(rslt); } }
/// <summary> /// Returns the requested configuration. /// </summary> /// <param name="connectionName">Name of the connection.</param> /// <returns></returns> internal static EntityGateCoreConfig GetConfig(string connectionName) { lock (locker) { EntityGateCoreConfig rslt = null; if (configs != null) { rslt = configs.FirstOrDefault(conf => conf.ConnectionName.EqualsIgnoreCase(connectionName)); } return(rslt); } }
/// <summary> /// Load the configuration. /// </summary> /// <param name="childNode">Node containing the configuration.</param> /// <param name="configProperties">The list of properties to look for.</param> /// <returns></returns> private static EntityGateCoreConfig LoadConfig(XmlNode childNode, PropertyInfo[] configProperties) { var config = new EntityGateCoreConfig(); foreach (var prop in configProperties) { var value = default(string); var colNode = childNode.SelectSingleNode(prop.Name); if (colNode != null) { value = colNode.InnerText; } else { var xmlNode = childNode.Attributes.GetNamedItem(prop.Name); value = xmlNode?.InnerText; } prop.SetValue(config, value, null); } return(config); }