MSB4018错误Visual Studio 2015 ASP.Net和错误将Web应用程序发布到Azure



我第一次使用Azure 2.9与Visual Studio 2015社区合作。我尝试创建一个全新的ASP.Net Web应用程序。默认模板生成并在浏览器中查看,没有任何问题。

我尝试使用Azure发布该网站。当这样做的时候,我得到这个错误

The "InvokePowerShell" task failed unexpectedly.
System.Management.Automation.CommandNotFoundException: The term     '[cmdletbinding(SupportsShouldProcess=$true)]
param($publishProperties, $packOutput, $nugetUrl)
# to learn more about this file visit http://go.microsoft.com/fwlink/?LinkId=524327
$publishModuleVersion = '1.0.1'
function Get-VisualStudio2015InstallPath{
[cmdletbinding()]
param()
process{
    $keysToCheck =    @('hklm:SOFTWAREWow6432NodeMicrosoftVisualStudio14.0',
                     'hklm:SOFTWAREMicrosoftVisualStudio14.0',
                     'hklm:SOFTWAREWow6432NodeMicrosoftVWDExpress14.0',
                     'hklm:SOFTWAREMicrosoftVWDExpress14.0'
                     )
    [string]$vsInstallPath=$null
    foreach($keyToCheck in $keysToCheck){
        if(Test-Path $keyToCheck){
            $vsInstallPath = (Get-itemproperty $keyToCheck -Name InstallDir -ErrorAction SilentlyContinue | select -ExpandProperty InstallDir -ErrorAction SilentlyContinue)
        }
        if($vsInstallPath){
            break;
        }
    }
    $vsInstallPath
}
}
$vsInstallPath = Get-VisualStudio2015InstallPath
$publishModulePath = "{0}ExtensionsMicrosoftWeb ToolsPublishScripts{1}" -f $vsInstallPath, $publishModuleVersion
if(!(Test-Path $publishModulePath)){
$publishModulePath = "{0}VWDExpressExtensionsMicrosoftWeb ToolsPublishScripts{1}" -f $vsInstallPath, $publishModuleVersion
}
$defaultPublishSettings = New-Object psobject -Property @{
LocalInstallDir = $publishModulePath
}
function Enable-PackageDownloader{
[cmdletbinding()]
param(
    $toolsDir = "$env:LOCALAPPDATAMicrosoftWeb ToolsPublishpackage-downloader-$publishModuleVersion",
    $pkgDownloaderDownloadUrl = 'http://go.microsoft.com/fwlink/?LinkId=524325') # package-downloader.psm1
process{
    if(get-module package-downloader){
        remove-module package-downloader | Out-Null
    }
    if(!(get-module package-downloader)){
        if(!(Test-Path $toolsDir)){ New-Item -Path $toolsDir -ItemType Directory -WhatIf:$false }
        $expectedPath = (Join-Path ($toolsDir) 'package-downloader.psm1')
        if(!(Test-Path $expectedPath)){
            'Downloading [{0}] to [{1}]' -f $pkgDownloaderDownloadUrl,$expectedPath | Write-Verbose
            (New-Object System.Net.WebClient).DownloadFile($pkgDownloaderDownloadUrl, $expectedPath)
        }
        if(!$expectedPath){throw ('Unable to download package-downloader.psm1')}
        'importing module [{0}]' -f $expectedPath | Write-Output
        Import-Module $expectedPath -DisableNameChecking -Force
    }
}
}
function Enable-PublishModule{
[cmdletbinding()]
param()
process{
    if(get-module publish-module){
        remove-module publish-module | Out-Null
    }
    if(!(get-module publish-module)){
        $localpublishmodulepath = Join-Path   $defaultPublishSettings.LocalInstallDir 'publish-module.psm1'
        if(Test-Path $localpublishmodulepath){
            'importing module [publish-module="{0}"] from local install dir' -f $localpublishmodulepath | Write-Verbose
            Import-Module $localpublishmodulepath -DisableNameChecking -Force
            $true
        }
    }
}
}
try{
if (!(Enable-PublishModule)){
    Enable-PackageDownloader
    Enable-NuGetModule -name 'publish-module' -version $publishModuleVersion -nugetUrl $nugetUrl
}
'Calling Publish-AspNet' | Write-Verbose
# call Publish-AspNet to perform the publish operation
Publish-AspNet -publishProperties $publishProperties -packOutput $packOutput
} 
catch{
"An error occurred during publish.`n{0}" -f $_.Exception.Message | Write-Error
}' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
   at System.Management.Automation.Runspaces.AsyncResult.EndInvoke()
   at System.Management.Automation.PowerShell.EndInvoke(IAsyncResult asyncResult)
   at Microsoft.Web.Publishing.Tasks.InvokePowerShell.Execute()
   at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
   at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext() WebApplication1     0   

我想我的安装中遗漏了什么?有人知道这个错误是什么,或者如何通过它吗?

我过去对此投了赞成票,然后显然在其他地方找到了答案,然后又忘记了答案,最后又出现在这里。


添加<AutoParameterizationWebConfigConnectionStrings>False</AutoParameterizationWebConfigConnectionStrings>在右边的csproj中PropertyGroup为我解决了这个问题。

相关内容

最新更新