【发布时间】:2010-11-19 20:50:28
【问题描述】:
我有以下脚本,它将更新开发中使用的三个不同配置文件的连接字符串。
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
}
主要
问题是连接字符串需要包含 "e;但是当配置文件被保存时,这变成了 "e;因此连接字符串不再有效。
有谁知道这样做的方法,我考虑过对文件进行文本替换,但也许有更简洁的方法。
感谢您的帮助。
【问题讨论】:
标签: linq entity-framework powershell connection-string app-config