Пример #1
0
        private static void GuardaConfiguracao(ElementosConfiguracao value, bool valueEncrypt)
        {
            try
            {
                var config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
                //var config = ConfigurationManager.OpenExeConfiguration(Path);
                var oConfiguration = config.GetSection("ConfigInfo");
                if (!oConfiguration.SectionInformation.IsProtected)
                {
                    if (!oConfiguration.SectionInformation.IsLocked)
                    {
                        config.Sections.Remove("ConfigInfo");
                        config.Sections.Add("ConfigInfo", value);
                        // oConfiguration = value;
                        if (valueEncrypt)
                        {
                            oConfiguration.SectionInformation.ProtectSection("RsaProtectedConfigurationProvider");
                        }


                        //config.Sections.Add(value.Name,value);

                        //oConfiguration.SectionInformation.ForceSave = true;
                        // config.Save(ConfigurationSaveMode.Modified);
                        config.Save(ConfigurationSaveMode.Modified, true);
                        ConfigurationManager.RefreshSection("ConfigInfo");
                    }
                }
            }
            catch (Exception ex)
            {
                //EventAggregationProvider.Aggregator.Publish<EventoBackend>(new EventoBackend(EventoTipo.Erro, ex.Message));
                EventAggregationProvider.Aggregator.Publish(new EventoBackend(EventoTipo.Erro, ex.Message));
            }
        }
Пример #2
0
        public void SaveConfig(Configuracao value, bool encryptData = false)
        {
            var elemento = new ElementoConfiguracao
            {
                DadosConfiguracaoConfigOk      = value.ConfigOk,
                DadosConfiguracaoServidorOk    = value.WebConfigurationOk,
                DadosConfiguracaoSQLServer     = value.SQLConfigurationOk,
                DadosConfiguracaoRegistoOk     = value.IsRegistered,
                DadosConfiguracaoLicencaValida = value.IsValid,
                DadosConfiguracaoMailCliente   = value.MailCliente,
                DadosConfiguracaoSerial        = value.Serial,
                //DadosConfiguracaoNomeDbphc = value.PhcdbName,
                //DadosConfiguracaoSQLPassPhc = value.PhcdbUserPwd,
                //DadosConfiguracaoSQLUserNamePhc = value.PhcdbuSer,
                DadosConfiguracaoNomeSite    = value.NomeSite,
                DadosConfiguracaoNomeAppPool = value.NomeApplicationPool,
                DadosConfiguracaoNomeVDir    = value.NomeVirtualDir,
                DadosConfiguracaoServico     = value.InstalacaoServico
            };

            var elementosConfiguracao = new ElementosConfiguracao
            {
                Name       = "Dados",
                ConfigData = elemento
            };


            GuardaConfiguracao(elementosConfiguracao, encryptData);
        }
Пример #3
0
        private static ElementosConfiguracao GetConfigData()
        {
            try
            {
                // var config = ConfigurationManager.OpenExeConfiguration(Path);
                var config         = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
                var oConfiguration = config.GetSection("ConfigInfo");
                var tmpData        = new ElementosConfiguracao();

                if (!oConfiguration.SectionInformation.IsProtected)
                {
                    if (!oConfiguration.SectionInformation.IsLocked)
                    {
                        oConfiguration.SectionInformation.UnprotectSection();
                        tmpData = oConfiguration as ElementosConfiguracao;
                    }
                }
                return(tmpData);
            }
            catch (Exception ex)
            {
                //EventAggregationProvider.Aggregator.Publish<EventoBackend>(new EventoBackend(EventoTipo.Erro, ex.Message));
                EventAggregationProvider.Aggregator.Publish(new EventoBackend(EventoTipo.Erro, ex.Message));
            }


            return(null);
        }