From 6ee83a73416fb27d3d2296baaf50194d24cae581 Mon Sep 17 00:00:00 2001 From: Samuele Locatelli Date: Tue, 25 May 2021 19:49:47 +0200 Subject: [PATCH] Aggiunta iniziale progetto webconfigsetter --- WebConfigSetter.sln | 25 +++ WebConfigSetter/CONF/ColCom.json | 26 +++ WebConfigSetter/CONF/DonatiBasi.json | 26 +++ WebConfigSetter/CONF/DonatiLav.json | 26 +++ WebConfigSetter/CONF/EdilChim.json | 26 +++ WebConfigSetter/CONF/Jetco.json | 26 +++ WebConfigSetter/CONF/LVF.json | 26 +++ WebConfigSetter/CONF/PlaceHolder.file | 1 + WebConfigSetter/CONF/Steamware.json | 26 +++ WebConfigSetter/CONF/Valvital.json | 26 +++ WebConfigSetter/CONF/default.json | 26 +++ WebConfigSetter/Objects.cs | 22 +++ WebConfigSetter/Program.cs | 244 +++++++++++++++++++++++++ WebConfigSetter/WebConfigSetter.csproj | 52 ++++++ 14 files changed, 578 insertions(+) create mode 100644 WebConfigSetter.sln create mode 100644 WebConfigSetter/CONF/ColCom.json create mode 100644 WebConfigSetter/CONF/DonatiBasi.json create mode 100644 WebConfigSetter/CONF/DonatiLav.json create mode 100644 WebConfigSetter/CONF/EdilChim.json create mode 100644 WebConfigSetter/CONF/Jetco.json create mode 100644 WebConfigSetter/CONF/LVF.json create mode 100644 WebConfigSetter/CONF/PlaceHolder.file create mode 100644 WebConfigSetter/CONF/Steamware.json create mode 100644 WebConfigSetter/CONF/Valvital.json create mode 100644 WebConfigSetter/CONF/default.json create mode 100644 WebConfigSetter/Objects.cs create mode 100644 WebConfigSetter/Program.cs create mode 100644 WebConfigSetter/WebConfigSetter.csproj diff --git a/WebConfigSetter.sln b/WebConfigSetter.sln new file mode 100644 index 0000000..9548d31 --- /dev/null +++ b/WebConfigSetter.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.30717.126 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "WebConfigSetter", "WebConfigSetter\WebConfigSetter.csproj", "{185C28E3-6BE4-4732-A59B-775C2645B9BE}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {185C28E3-6BE4-4732-A59B-775C2645B9BE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {185C28E3-6BE4-4732-A59B-775C2645B9BE}.Debug|Any CPU.Build.0 = Debug|Any CPU + {185C28E3-6BE4-4732-A59B-775C2645B9BE}.Release|Any CPU.ActiveCfg = Release|Any CPU + {185C28E3-6BE4-4732-A59B-775C2645B9BE}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {7C19E359-D413-4F3A-ACA1-55CCFFB646D9} + EndGlobalSection +EndGlobal diff --git a/WebConfigSetter/CONF/ColCom.json b/WebConfigSetter/CONF/ColCom.json new file mode 100644 index 0000000..eed4ceb --- /dev/null +++ b/WebConfigSetter/CONF/ColCom.json @@ -0,0 +1,26 @@ +{ + "appSettRules": { + "DbConfConnectionString": "Data Source=SQL2016PROD;Initial Catalog=ColCom_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=ColCom_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringIS": "Data Source=SQL2016PROD;Initial Catalog=ColCom_MoonPro_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringES3": "Data Source=SQL2016PROD;Initial Catalog=ColCom_MoonPro_ES3_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "PermessiConnectionString": "Data Source=SQL2016PROD;Initial Catalog=ColCom_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "UtenteCdcConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "VocabolarioConnectionString": "Data Source=SQL2016PROD;Initial Catalog=ColCom_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesAuthConnectionString": "Data Source=SQL2016PROD;Initial Catalog=ColCom_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringArca": "Data Source=SQL2016PROD;Initial Catalog=ColCom_MoonPro_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringMAG": "Data Source=SQL2016PROD;Initial Catalog=ColCom_MoonPro_MAG_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + }, + "connStrRules": { + "MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=ColCom_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=ColCom_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_IS_ConnectionString": "Data Source=SQL2016PROD;Initial Catalog=ColCom_MoonPro_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.C_TRACKConnectionString": "Data Source=SQL2016PROD;Initial Catalog=ColCom_C_TRACK_prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_ES3ConnectionString": "Data Source=SQL2016PROD;Initial Catalog=ColCom_MoonPro_ES3_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16", + "ErrorLog": "Data Source=SQL2016PROD;Initial Catalog=Elmah;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProEntities": "metadata=res://*/Models.MPModel.csdl|res://*/Models.MPModel.ssdl|res://*/Models.MPModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016PROD;initial Catalog=ColCom_MoonPro_Prod;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "MapoMonEntities": "metadata=res://*/Models.MapoModel.csdl|res://*/Models.MapoModel.ssdl|res://*/Models.MapoModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016PROD;initial Catalog=ColCom_MoonPro_Prod;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "SteamWare.Properties.Settings.DbConfConnectionString": "Data Source=SQL2016PROD;Initial Catalog=ColCom_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + } +} \ No newline at end of file diff --git a/WebConfigSetter/CONF/DonatiBasi.json b/WebConfigSetter/CONF/DonatiBasi.json new file mode 100644 index 0000000..779efbb --- /dev/null +++ b/WebConfigSetter/CONF/DonatiBasi.json @@ -0,0 +1,26 @@ +{ + "appSettRules": { + "DbConfConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProBASI_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProBASI_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringIS": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProBASI_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringES3": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProBASI_ES3_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "PermessiConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProBASI_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "UtenteCdcConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "VocabolarioConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProBASI_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesAuthConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProBASI_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringArca": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProBASI_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringMAG": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProBASI_MAG_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + }, + "connStrRules": { + "MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProBASI_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProBASI_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_IS_ConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProBASI_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.C_TRACKConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_C_TRACK_prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_ES3ConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProBASI_ES3_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16", + "ErrorLog": "Data Source=SQL2016PROD;Initial Catalog=Elmah;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProEntities": "metadata=res://*/Models.MPModel.csdl|res://*/Models.MPModel.ssdl|res://*/Models.MPModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016PROD;initial Catalog=Donati_MoonProBASI_Prod;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "MapoMonEntities": "metadata=res://*/Models.MapoModel.csdl|res://*/Models.MapoModel.ssdl|res://*/Models.MapoModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016PROD;initial Catalog=Donati_MoonProBASI_Prod;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "SteamWare.Properties.Settings.DbConfConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProBASI_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + } +} \ No newline at end of file diff --git a/WebConfigSetter/CONF/DonatiLav.json b/WebConfigSetter/CONF/DonatiLav.json new file mode 100644 index 0000000..3c7e0e9 --- /dev/null +++ b/WebConfigSetter/CONF/DonatiLav.json @@ -0,0 +1,26 @@ +{ + "appSettRules": { + "DbConfConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProLAV_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProLAV_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringIS": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProLAV_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringES3": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProLAV_ES3_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "PermessiConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProLAV_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "UtenteCdcConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "VocabolarioConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProLAV_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesAuthConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProLAV_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringArca": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProLAV_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringMAG": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProLAV_MAG_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + }, + "connStrRules": { + "MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProLAV_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProLAV_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_IS_ConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProLAV_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.C_TRACKConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_C_TRACK_prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_ES3ConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProLAV_ES3_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16", + "ErrorLog": "Data Source=SQL2016PROD;Initial Catalog=Elmah;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProEntities": "metadata=res://*/Models.MPModel.csdl|res://*/Models.MPModel.ssdl|res://*/Models.MPModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016PROD;initial Catalog=Donati_MoonProLAV_Prod;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "MapoMonEntities": "metadata=res://*/Models.MapoModel.csdl|res://*/Models.MapoModel.ssdl|res://*/Models.MapoModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016PROD;initial Catalog=Donati_MoonProLAV_Prod;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "SteamWare.Properties.Settings.DbConfConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Donati_MoonProLAV_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + } +} \ No newline at end of file diff --git a/WebConfigSetter/CONF/EdilChim.json b/WebConfigSetter/CONF/EdilChim.json new file mode 100644 index 0000000..492612c --- /dev/null +++ b/WebConfigSetter/CONF/EdilChim.json @@ -0,0 +1,26 @@ +{ + "appSettRules": { + "DbConfConnectionString": "Data Source=SQL2016PROD;Initial Catalog=EdilChim_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=EdilChim_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringIS": "Data Source=SQL2016PROD;Initial Catalog=EdilChim_MoonPro_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringES3": "Data Source=SQL2016PROD;Initial Catalog=EdilChim_MoonPro_ES3_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "PermessiConnectionString": "Data Source=SQL2016PROD;Initial Catalog=EdilChim_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "UtenteCdcConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "VocabolarioConnectionString": "Data Source=SQL2016PROD;Initial Catalog=EdilChim_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesAuthConnectionString": "Data Source=SQL2016PROD;Initial Catalog=EdilChim_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringArca": "Data Source=SQL2016PROD;Initial Catalog=EdilChim_MoonPro_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringMAG": "Data Source=SQL2016PROD;Initial Catalog=EdilChim_MoonPro_MAG_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + }, + "connStrRules": { + "MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=EdilChim_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=EdilChim_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_IS_ConnectionString": "Data Source=SQL2016PROD;Initial Catalog=EdilChim_MoonPro_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.C_TRACKConnectionString": "Data Source=SQL2016PROD;Initial Catalog=EdilChim_C_TRACK_prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_ES3ConnectionString": "Data Source=SQL2016PROD;Initial Catalog=EdilChim_MoonPro_ES3_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16", + "ErrorLog": "Data Source=SQL2016PROD;Initial Catalog=Elmah;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProEntities": "metadata=res://*/Models.MPModel.csdl|res://*/Models.MPModel.ssdl|res://*/Models.MPModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016PROD;initial Catalog=EdilChim_MoonPro_Prod;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "MapoMonEntities": "metadata=res://*/Models.MapoModel.csdl|res://*/Models.MapoModel.ssdl|res://*/Models.MapoModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016PROD;initial Catalog=EdilChim_MoonPro_Prod;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "SteamWare.Properties.Settings.DbConfConnectionString": "Data Source=SQL2016PROD;Initial Catalog=EdilChim_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + } +} \ No newline at end of file diff --git a/WebConfigSetter/CONF/Jetco.json b/WebConfigSetter/CONF/Jetco.json new file mode 100644 index 0000000..47b4b6c --- /dev/null +++ b/WebConfigSetter/CONF/Jetco.json @@ -0,0 +1,26 @@ +{ + "appSettRules": { + "DbConfConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringIS": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringES3": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_ES3_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "PermessiConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "UtenteCdcConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "VocabolarioConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesAuthConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringArca": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringMAG": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_MAG_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + }, + "connStrRules": { + "MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_IS_ConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.C_TRACKConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Jetco_C_TRACK_prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_ES3ConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_ES3_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16", + "ErrorLog": "Data Source=SQL2016PROD;Initial Catalog=Elmah;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProEntities": "metadata=res://*/Models.MPModel.csdl|res://*/Models.MPModel.ssdl|res://*/Models.MPModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016PROD;initial Catalog=Jetco_MoonPro_Prod;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "MapoMonEntities": "metadata=res://*/Models.MapoModel.csdl|res://*/Models.MapoModel.ssdl|res://*/Models.MapoModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016PROD;initial Catalog=Jetco_MoonPro_Prod;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "SteamWare.Properties.Settings.DbConfConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Jetco_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + } +} \ No newline at end of file diff --git a/WebConfigSetter/CONF/LVF.json b/WebConfigSetter/CONF/LVF.json new file mode 100644 index 0000000..226cef8 --- /dev/null +++ b/WebConfigSetter/CONF/LVF.json @@ -0,0 +1,26 @@ +{ + "appSettRules": { + "DbConfConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Lvf_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Lvf_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringIS": "Data Source=SQL2016PROD;Initial Catalog=Lvf_MoonPro_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringES3": "Data Source=SQL2016PROD;Initial Catalog=Lvf_MoonPro_ES3_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "PermessiConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Lvf_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "UtenteCdcConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "VocabolarioConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Lvf_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesAuthConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Lvf_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringArca": "Data Source=SQL2016PROD;Initial Catalog=Lvf_MoonPro_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringMAG": "Data Source=SQL2016PROD;Initial Catalog=Lvf_MoonPro_MAG_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + }, + "connStrRules": { + "MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Lvf_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Lvf_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_IS_ConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Lvf_MoonPro_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.C_TRACKConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Lvf_C_TRACK_prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_ES3ConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Lvf_MoonPro_ES3_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16", + "ErrorLog": "Data Source=SQL2016PROD;Initial Catalog=Elmah;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProEntities": "metadata=res://*/Models.MPModel.csdl|res://*/Models.MPModel.ssdl|res://*/Models.MPModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016PROD;initial Catalog=Lvf_MoonPro_Prod;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "MapoMonEntities": "metadata=res://*/Models.MapoModel.csdl|res://*/Models.MapoModel.ssdl|res://*/Models.MapoModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016PROD;initial Catalog=Lvf_MoonPro_Prod;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "SteamWare.Properties.Settings.DbConfConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Lvf_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + } +} \ No newline at end of file diff --git a/WebConfigSetter/CONF/PlaceHolder.file b/WebConfigSetter/CONF/PlaceHolder.file new file mode 100644 index 0000000..5f28270 --- /dev/null +++ b/WebConfigSetter/CONF/PlaceHolder.file @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/WebConfigSetter/CONF/Steamware.json b/WebConfigSetter/CONF/Steamware.json new file mode 100644 index 0000000..c51c537 --- /dev/null +++ b/WebConfigSetter/CONF/Steamware.json @@ -0,0 +1,26 @@ +{ + "appSettRules": { + "DbConfConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringIS": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_IS_Jetco;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringES3": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_ES3;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "PermessiConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "UtenteCdcConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "VocabolarioConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesAuthConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringArca": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_IS_EdilChim;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringMAG": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_MAG;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + }, + "connStrRules": { + "MoonProConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonProConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_IS_ConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_IS_ColCom;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.C_TRACKConnectionString": "Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_ES3ConnectionString": "Data Source=sql2016dev;Initial Catalog=MoonPro_ES3;Persist Security Info=True;User ID=sa;Password=keyhammer16", + "ErrorLog": "Data Source=SQL2016DEV;Initial Catalog=Elmah;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProEntities": "metadata=res://*/Models.MPModel.csdl|res://*/Models.MPModel.ssdl|res://*/Models.MPModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016DEV;initial catalog=MoonPro;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "MapoMonEntities": "metadata=res://*/Models.MapoModel.csdl|res://*/Models.MapoModel.ssdl|res://*/Models.MapoModel.msl;provider=System.Data.SqlClient;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016DEV;initial catalog=MoonPro;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "SteamWare.Properties.Settings.DbConfConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + } +} \ No newline at end of file diff --git a/WebConfigSetter/CONF/Valvital.json b/WebConfigSetter/CONF/Valvital.json new file mode 100644 index 0000000..2b466e6 --- /dev/null +++ b/WebConfigSetter/CONF/Valvital.json @@ -0,0 +1,26 @@ +{ + "appSettRules": { + "DbConfConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Valvital_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Valvital_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringIS": "Data Source=SQL2016PROD;Initial Catalog=Valvital_MoonPro_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringES3": "Data Source=SQL2016PROD;Initial Catalog=Valvital_MoonPro_ES3_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "PermessiConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Valvital_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "UtenteCdcConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "VocabolarioConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Valvital_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesAuthConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Valvital_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringArca": "Data Source=SQL2016PROD;Initial Catalog=Valvital_MoonPro_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringMAG": "Data Source=SQL2016PROD;Initial Catalog=Valvital_MoonPro_MAG_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + }, + "connStrRules": { + "MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Valvital_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonProConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Valvital_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_IS_ConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Valvital_MoonPro_IS_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.C_TRACKConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Valvital_C_TRACK_prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_ES3ConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Valvital_MoonPro_ES3_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16", + "ErrorLog": "Data Source=SQL2016PROD;Initial Catalog=Elmah;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProEntities": "metadata=res://*/Models.MPModel.csdl|res://*/Models.MPModel.ssdl|res://*/Models.MPModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016PROD;initial Catalog=Valvital_MoonPro_Prod;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "MapoMonEntities": "metadata=res://*/Models.MapoModel.csdl|res://*/Models.MapoModel.ssdl|res://*/Models.MapoModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016PROD;initial Catalog=Valvital_MoonPro_Prod;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "SteamWare.Properties.Settings.DbConfConnectionString": "Data Source=SQL2016PROD;Initial Catalog=Valvital_MoonPro_Prod;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + } +} \ No newline at end of file diff --git a/WebConfigSetter/CONF/default.json b/WebConfigSetter/CONF/default.json new file mode 100644 index 0000000..c51c537 --- /dev/null +++ b/WebConfigSetter/CONF/default.json @@ -0,0 +1,26 @@ +{ + "appSettRules": { + "DbConfConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringIS": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_IS_Jetco;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringES3": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_ES3;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "PermessiConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "UtenteCdcConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "VocabolarioConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_Anagrafica;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "DevicesAuthConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringArca": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_IS_EdilChim;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProConnectionStringMAG": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_MAG;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + }, + "connStrRules": { + "MoonProConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonProConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_IS_ConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro_IS_ColCom;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.C_TRACKConnectionString": "Data Source=SQL2016DEV;Initial Catalog=C_TRACK;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MapoDb.Properties.Settings.MoonPro_ES3ConnectionString": "Data Source=sql2016dev;Initial Catalog=MoonPro_ES3;Persist Security Info=True;User ID=sa;Password=keyhammer16", + "ErrorLog": "Data Source=SQL2016DEV;Initial Catalog=Elmah;Persist Security Info=True;User ID=sa;Password=keyhammer16;", + "MoonProEntities": "metadata=res://*/Models.MPModel.csdl|res://*/Models.MPModel.ssdl|res://*/Models.MPModel.msl;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016DEV;initial catalog=MoonPro;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "MapoMonEntities": "metadata=res://*/Models.MapoModel.csdl|res://*/Models.MapoModel.ssdl|res://*/Models.MapoModel.msl;provider=System.Data.SqlClient;provider=System.Data.SqlClient;provider connection string=\"data source=SQL2016DEV;initial catalog=MoonPro;persist security info=True;user id=sa;password=keyhammer16;multipleactiveresultsets=True;application name=EntityFramework\"", + "SteamWare.Properties.Settings.DbConfConnectionString": "Data Source=SQL2016DEV;Initial Catalog=MoonPro;Persist Security Info=True;User ID=sa;Password=keyhammer16;" + } +} \ No newline at end of file diff --git a/WebConfigSetter/Objects.cs b/WebConfigSetter/Objects.cs new file mode 100644 index 0000000..143e56d --- /dev/null +++ b/WebConfigSetter/Objects.cs @@ -0,0 +1,22 @@ +using System; +using System.Collections.Generic; +using System.Text; + +namespace WebConfigSetter +{ + public enum operationMode + { + readConf = 0, + writeConf + } + + public class SetCliente + { + #region Public Fields + + public Dictionary appSettRules = new Dictionary(); + public Dictionary connStrRules = new Dictionary(); + + #endregion Public Fields + } +} \ No newline at end of file diff --git a/WebConfigSetter/Program.cs b/WebConfigSetter/Program.cs new file mode 100644 index 0000000..187427b --- /dev/null +++ b/WebConfigSetter/Program.cs @@ -0,0 +1,244 @@ +using Newtonsoft.Json; +using System; +using System.IO; +using System.Reflection; +using System.Xml; + +namespace WebConfigSetter +{ + internal class Program + { + #region Protected Fields + + protected const string separatore = "---------------------------------------------------------------------------------------"; + + /// + /// stringa di setup cliente + /// + protected static SetCliente currConfig = new SetCliente(); + + #endregion Protected Fields + + #region Protected Properties + + protected static string baseDir { get; set; } = Path.GetDirectoryName(Assembly.GetEntryAssembly().Location);//@"c:\Steamware\WebConfigSetter"; +#if DEBUG + protected static string baseWebAppDir { get; set; } = @"\\iis02\c$\inetpub\wwwroot\MP\"; +#else + protected static string baseWebAppDir { get; set; } = @"c:\inetpub\wwwroot\MP\"; + +#endif + protected static string confDir { get; set; } = $@"{baseDir}\CONF"; + + protected static string currentSetFile { get; set; } = $@"{confDir}\default.json"; + + /// + /// modalità scrittura (altrimenti legge e carica conf parsando i files) + /// + protected static operationMode opMode { get; set; } = operationMode.readConf; + + protected static string setName { get; set; } = "Steamware"; + + #endregion Protected Properties + + #region Private Methods + + private static void Main(string[] args) + { + string userInput = ""; + if (args == null || args.Length == 0) + { + Console.WriteLine(separatore); + Console.WriteLine("Sintassi: WebConfigSetter.exe $1 $2 $3"); + Console.WriteLine("$1: Modalità operativa (0=read, 1=write)"); + Console.WriteLine("$2: WebApp directory di base"); + Console.WriteLine("$3: SetName da applicare"); + Console.WriteLine(separatore); + Console.WriteLine(""); + Console.WriteLine("Nessuna parametro fornito, verranno ora richiesti i parametri"); + Console.WriteLine(separatore); + } + // carico parametri opzionali + if (args.Length > 0) + { + opMode = args[0] == "1" ? operationMode.writeConf : operationMode.readConf; + } + else + { + Console.WriteLine($"Modalità operativa 0=read, 1=write [{opMode}]"); + userInput = Console.ReadLine(); + if (!string.IsNullOrEmpty(userInput)) + { + opMode = userInput == "1" ? operationMode.writeConf : operationMode.readConf; + } + } + if (args.Length > 1) + { + baseWebAppDir = args[1]; + } + else + { + Console.WriteLine($"WebApp directory di base [{baseWebAppDir}]"); + userInput = Console.ReadLine(); + if (!string.IsNullOrEmpty(userInput)) + { + baseWebAppDir = userInput; + } + } + if (args.Length > 2) + { + setName = args[2]; + } + else + { + Console.WriteLine($"SetName da applicare [{setName}]"); + userInput = Console.ReadLine(); + if (!string.IsNullOrEmpty(userInput)) + { + setName = userInput; + } + } + + Console.WriteLine(separatore); + Console.WriteLine($"Modalità operativa: {opMode}"); + Console.WriteLine($"baseWebAppDir: {baseWebAppDir}"); + Console.WriteLine($"setName: {setName}"); + + // salvo info... + currentSetFile = $"{confDir}\\{setName}.json"; + + // processo richiesta + processRequest(); + + Console.WriteLine(separatore); + } + + /// + /// Esecuzione richiesta principale + /// + private static void processRequest() + { + // caso 1: acquisisco conf + if (opMode == operationMode.readConf) + { + readConfToFiles(); + } + // caso 2: effettuo sostituzioni + else + { + writeConfToFiles(); + } + } + + private static void readConfToFiles() + { + // cerca i file we.config dalla folder richiesta in giù... + string[] configFiles = Directory.GetFiles(baseWebAppDir, "web.config", SearchOption.AllDirectories); + XmlDocument doc = new XmlDocument(); + + foreach (var item in configFiles) + { + Console.WriteLine($"Found: {item}"); + + doc = new XmlDocument(); + doc.Load(item); + + // cerco in appConfig + XmlNodeList appSettingsList = doc.SelectNodes("configuration/appSettings/*"); + + for (int i = 0; i < appSettingsList.Count; i++) + { + if (appSettingsList[i].Attributes["key"].Value.Contains("ConnectionString")) + { + if (!currConfig.appSettRules.ContainsKey(appSettingsList[i].Attributes["key"].Value)) + { + currConfig.appSettRules.Add(appSettingsList[i].Attributes["key"].Value, appSettingsList[i].Attributes["value"].Value); + } + } + } + // cerco in connectionStrings + XmlNodeList connectionStringsList = doc.SelectNodes("configuration/connectionStrings/*"); + + for (int i = 0; i < connectionStringsList.Count; i++) + { + if (!currConfig.connStrRules.ContainsKey(connectionStringsList[i].Attributes["name"].Value)) + { + currConfig.connStrRules.Add(connectionStringsList[i].Attributes["name"].Value, connectionStringsList[i].Attributes["connectionString"].Value); + } + } + } + + // serializzo! + string rawData = JsonConvert.SerializeObject(currConfig, Newtonsoft.Json.Formatting.Indented); + + // salvo il file di conf! + File.WriteAllText(currentSetFile, rawData); + } + + private static void writeConfToFiles() + { + // check file exists... + if (File.Exists(currentSetFile)) + { + // leggo il file delle configurazioni da applicare... + string rawData = File.ReadAllText(currentSetFile); + if (!string.IsNullOrEmpty(rawData)) + { + currConfig = JsonConvert.DeserializeObject(rawData); + + // cerca i file we.config dalla folder richiesta in giù... + string[] configFiles = Directory.GetFiles(baseWebAppDir, "web.config", SearchOption.AllDirectories); + XmlDocument doc = new XmlDocument(); + + foreach (var item in configFiles) + { + Console.Write($"Found: {item} --> "); + + doc = new XmlDocument(); + doc.Load(item); + + // cerco in appConfig + XmlNodeList appSettingsList = doc.SelectNodes("configuration/appSettings/*"); + + for (int i = 0; i < appSettingsList.Count; i++) + { + if (appSettingsList[i].Attributes["key"].Value.Contains("ConnectionString")) + { + if (currConfig.appSettRules.ContainsKey(appSettingsList[i].Attributes["key"].Value)) + { + // effettuo sostituzione + appSettingsList[i].Attributes["value"].Value = currConfig.appSettRules[appSettingsList[i].Attributes["key"].Value]; + } + } + } + // cerco in connectionStrings + XmlNodeList connectionStringsList = doc.SelectNodes("configuration/connectionStrings/*"); + + for (int i = 0; i < connectionStringsList.Count; i++) + { + if (currConfig.connStrRules.ContainsKey(connectionStringsList[i].Attributes["name"].Value)) + { + // effettuo sostituzione + connectionStringsList[i].Attributes["connectionString"].Value = currConfig.connStrRules[connectionStringsList[i].Attributes["name"].Value]; + } + } + + // ora lo SALVO (il documento...) + doc.Save(item); + Console.WriteLine(" values updated!"); + } + } + else + { + Console.WriteLine($"Errore: file conf vuoto: {currentSetFile}"); + } + } + else + { + Console.WriteLine($"Errore: file conf non trovato: {currentSetFile}"); + } + } + + #endregion Private Methods + } +} \ No newline at end of file diff --git a/WebConfigSetter/WebConfigSetter.csproj b/WebConfigSetter/WebConfigSetter.csproj new file mode 100644 index 0000000..fa9a39d --- /dev/null +++ b/WebConfigSetter/WebConfigSetter.csproj @@ -0,0 +1,52 @@ + + + + Exe + net5.0 + + + + + + + + + Always + + + + + + + + + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + Always + + + \ No newline at end of file