Visual studio 2017 如何扩展.NET核心应用程序的msdeploy/发布管道

Visual studio 2017 如何扩展.NET核心应用程序的msdeploy/发布管道,visual-studio-2017,asp.net-core-2.0,msdeploy,webdeploy,msbuild-wpp,Visual Studio 2017,Asp.net Core 2.0,Msdeploy,Webdeploy,Msbuild Wpp,Visual Studio中的旧式/.NET Framework Web应用程序具有可自定义的发布管道。例如,可以指定Parameters.xml文件,如下所示: <PropertyGroup> <WebAppPackageConfigDir Condition=" '$(WebAppPackageConfigDir)' == '' ">$(MSBuildProjectDirectory)\Package</WebAppPackageConfigDir&

Visual Studio中的旧式/.NET Framework Web应用程序具有可自定义的发布管道。例如,可以指定
Parameters.xml
文件,如下所示:

  <PropertyGroup>
    <WebAppPackageConfigDir Condition=" '$(WebAppPackageConfigDir)' == '' ">$(MSBuildProjectDirectory)\Package</WebAppPackageConfigDir>
    <ProjectParametersXMLFile>$(WebAppPackageConfigDir)\Parameters.xml</ProjectParametersXMLFile>
  </PropertyGroup>
似乎不支持自定义部署参数。类似地,
目标似乎禁止定制

WPP(Web发布管道-以前的实现)很笨重,但是有一些文章/博客文章介绍了如何定制它。对于ASP.NETCore,我没有提到定制或扩展部署过程。我确实发现了,但它似乎已经过时了——它适用于VS2017,使用project.json和powershell脚本进行部署,而且似乎为了支持MSBuild目标而放弃了它

我也找到了,它记录了msdeploy设置中可以更改的几个部分,但我仍然声明,不支持扩展管道

我将缺乏可用信息解释为“自己解决”,这在处理MSBuild和MSDeploy时是一个挑战。是否有人成功定制了ASP.NET核心Web应用程序的部署管道?

我已经创建了此问题:-但是还没有响应。
  <!--
  ***********************************************************************************************
  TARGET : _CreateParameterFiles
  ***********************************************************************************************
 -->

  <Target Name="_CreateParameterFiles">

    <ItemGroup>
      <MsDeployDeclareParameters Remove="@(MsDeployDeclareParameters)" />

      <MsDeployDeclareParameters Include="IIS Web Application Name" >
        <Kind>ProviderPath</Kind>
        <Scope>IisApp</Scope>
        <Match>$(PublishIntermediateOutputPath)</Match>
        <Description></Description>
        <DefaultValue>$(DeployIisAppPath)</DefaultValue>
        <Value>$(DeployIisAppPath)</Value>
        <Tags>IisApp</Tags>
        <Priority></Priority>
        <ExcludeFromSetParameter>false</ExcludeFromSetParameter>
      </MsDeployDeclareParameters>
    </ItemGroup>

    <ItemGroup Condition="'@(_EFSQLScripts)' != ''">
      <MsDeployDeclareParameters Include="%(_EFSQLScripts.DBContext)">
        <Kind>ProviderPath</Kind>
        <Scope>dbfullsql</Scope>
        <Match>%(_EFSQLScripts.Identity)</Match>
        <Description></Description>
        <DefaultValue>%(_EFSQLScripts.ConnectionString)</DefaultValue>
        <Value>%(_EFSQLScripts.ConnectionString)</Value>
        <Tags>dbfullsql</Tags>
        <Priority></Priority>
        <ExcludeFromSetParameter>false</ExcludeFromSetParameter>
      </MsDeployDeclareParameters>
    </ItemGroup>

    <CreateParameterFile
      Parameters="@(MsDeployDeclareParameters)"
      DeclareSetParameterFile="$(_MSDeployParametersFilePath)"
      IncludeDefaultValue="True"
      OptimisticParameterDefaultValue="$(EnableOptimisticParameterDefaultValue)"
      SetParameterFile="$(_MSDeploySetParametersFilePath)"
      GenerateFileEvenIfEmpty="True" />
  </Target>