Ejemplo n.º 1
0
        /// <summary>
        /// Save the databases exposed via the API to the configuration file
        /// </summary>
        private void SaveExposedDatabases()
        {
            Dictionary <string, List <DbConfig> > dictDb = new Dictionary <string, List <DbConfig> >();

            AddExposedDatabases(dictDb, tblPxDatabases, "PX");
            AddExposedDatabases(dictDb, tblCnmmDatabases, "CNMM");

            ExposedDatabasesManager dbMan = new ExposedDatabasesManager(AppSettingsHelper.GetAppSettingsPath("dbmetaFile"));

            dbMan.Save(dictDb);
            PCAxis.Query.ExposedDatabases.Reload();
            //PCAxis.Api.ApiCache.InvalidateCache();
            PCAxis.Api.ApiCache.Current.Clear();
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Load configuration file
        /// </summary>
        private static void Load()
        {
            DatabaseConfigurations = new ConcurrentDictionary <string, Dictionary <string, DbConfig> >();

            var databaseXML = XDocument.Load(AppSettingsHelper.GetAppSettingsPath("dbmetaFile")); //ConfigurationManager.AppSettings["dbmetaFile"]);

            foreach (var databaseSetElement in databaseXML.Element("Databases").Elements("DatabaseSet"))
            {
                var language = (string)databaseSetElement.Attribute("language");
                DatabaseConfigurations.GetOrAdd(language, new Dictionary <string, DbConfig>());

                foreach (var databaseElement in databaseSetElement.Elements("Database"))
                {
                    var dbConfig = new DbConfig {
                        Type     = (string)databaseElement.Attribute("type"),
                        Name     = (string)databaseElement.Element("Name"),
                        RootPath = (string)databaseElement.Attribute("rootPath")
                    };
                    DatabaseConfigurations[language].Add((string)databaseElement.Attribute("id"), dbConfig);
                }
            }
        }