Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Powershell 无法删除所有Azure网站连接字符串_Powershell_Azure_Azure Web App Service - Fatal编程技术网

Powershell 无法删除所有Azure网站连接字符串

Powershell 无法删除所有Azure网站连接字符串,powershell,azure,azure-web-app-service,Powershell,Azure,Azure Web App Service,对于我的团队目前正在开发的一个网站,我们正在尝试编写一些PowerShell自动化,以临时覆盖通常位于Web.config中的连接字符串,然后稍后将其删除 但是,使用PowerShell cmdlet和Azure REST API,我们似乎无法将连接字符串设置为空。每当我们试图删除它时,要么命令说它成功了,但没有删除它,要么请求被拒绝为无效 可以使用管理门户删除所有连接字符串,那么我们缺少了什么,这意味着我们不能以编程的方式执行呢 下面是一个示例PowerShell命令,我们正在使用它,但它并没

对于我的团队目前正在开发的一个网站,我们正在尝试编写一些PowerShell自动化,以临时覆盖通常位于Web.config中的连接字符串,然后稍后将其删除

但是,使用PowerShell cmdlet和Azure REST API,我们似乎无法将连接字符串设置为空。每当我们试图删除它时,要么命令说它成功了,但没有删除它,要么请求被拒绝为无效

可以使用管理门户删除所有连接字符串,那么我们缺少了什么,这意味着我们不能以编程的方式执行呢

下面是一个示例PowerShell命令,我们正在使用它,但它并没有达到我们的目的:

$website = Get-AzureWebsite $websiteName -slot $websiteSlot
$connectionStrings = $website.ConnectionStrings

$result = $connectionStrings.Remove(($connectionStrings | Where-Object {$_.Name -eq $connectionStringName}))

Set-AzureWebsite $websiteName -slot $websiteSlot -ConnectionStrings $connectionStrings

我知道现在已经很晚了

我也遇到过同样的情况。我们可以更新应用程序设置,但不能更新连接字符串。我找到了解决方案。由于没有答案,我认为最好更新它

根据,哈希表(嵌套)的格式需要为

@{ KeyName = @{ Type = "MySql"; Value = "MySql Connection string"}};
之后,我运行代码更新应用程序,它工作了。下面是整个代码

$list =  @{ ConnectionString1 = @{ Type = "MySql"; Value = "MySql Connection string"}};

set-AzureRMWebAppSlot -ResourceGroupName "resourceGroup" -Name "devTest" -ConnectionStrings $list -slot "production"

在我看来,这似乎是一个bug。Microsoft最近声明,新的Azure门户由相同的公共API驱动,那么如何能够从UI中删除设置,而不是通过PowerShell?用户界面是如何删除设置的?我不知道,你得问微软。但是,这在我看来应该行得通。顺便说一句,如果你想关注的话,这里有一个链接,指向我昨晚在这个问题上打开的一个问题。