I have the following script that will update the connection string across three different config files used in development.
function Main()
{
pushd
cd ..
$aomsDir = pwd
$configFiles = @( 'util\GeneratePocos.exe.config', 'src\Web.UI\web.config', 'src\Data\App.Config')
$MyAOMSEntitiesConnStr = $env:AOMS_CONN_STR
Write-Host 'Beginning update of Connection strings...'
foreach($file in $configFiles)
{
$config = New-Object XML
$config.Load("$aomsDir\$file")
foreach($conStr in $config.configuration.connectionStrings.add)
{
if($conStr.name -ieq 'AOMSEntities')
{
$conStr.connectionString = $MyAOMSEntitiesConnStr
}
}
$config.Save("$aomsDir\$file")
}
Write-Host 'Completed updating connection strings for your machine.'
popd
}
Main
The problem is that the connection string needs to include "e; but when the config file is saved this becomes "e; As a result the connection string is no longer valid.
Does anyone know of a way to do this, I thought about doing a text replace of the file but maybe there is a cleaner way.
Thanks for your help.