Freigeben über


Gewusst wie: Bearbeiten der Bereitstellungseinstellungen in Veröffentlichungsprofildateien (.pubxml) und der WPP.TARGETS-Datei in Visual Studio-Webprojekten

In diesem Thema wird erläutert, wie Bereitstellungseinstellungen konfiguriert, wobei Dateien des Veröffentlichungsprofils (.pubxml) bearbeitet oder durch eine .wpp.targets-Datei für Visual Studio-Webprojekte erstellt. Das Thema bezieht sich auf die folgenden Produkte zu:

Das Bearbeiten einer Veröffentlichungsprofildatei oder das Erstellen einer .wpp.targets-Datei sind möglicherweise erforderlich, da einige Bereitstellungskonfigurationsaufgaben Visual Studio-Benutzeroberfläche nicht ausgeführt werden können. Einige Bereitstellungsoptionen können nur angegeben werden, indem eine der XML-Dateien behandelt, die die Webpublishingpipeline (WPP) steuern.

Dieses Thema enthält die folgenden Abschnitte:

  • Dateien des Bearbeitungs-Veröffentlichungsprofil-(.pubxml)

    Wenn Sie Einstellungen konfigurieren möchten, die einem bestimmten Veröffentlichungsprofil spezifisch sind, bearbeiten Sie die Veröffentlichungsprofildatei. Veröffentlichungsprofildateien werden <profilename>.pubxml benannt und sind im Eigenschaften- \ PublishProfiles-Ordner unter dem Projektordner. Jede Datei enthält Einstellungen, die für ein Veröffentlichungsprofil gelten. Die Werte, die Sie im Assistenten Web veröffentlichen eingeben, werden in diesen Dateien gespeichert.

  • Erstellen einer .wpp.targets-Datei

    Wenn Sie Einstellungen konfigurieren möchten, die allen Profilen anwenden, verwenden Sie in einem Projekt, erstellen Sie eine .wpp.targets-Datei. Die .wpp.targets-Datei muss im Projektordner befinden und muss lauten <projectname>.wpp.targets.

Hinweis

Wenn Sie die Registerkarte SQL packen/veröffentlichen verwenden, um die Datenbankbereitstellung zu konfigurieren, müssen Sie möglicherweise Datenbankbereitstellungseinstellungen in der Projektdatei bearbeiten.Informationen darüber, wie Einstellungen, die zur Registerkarte SQL packen/veröffentlichen verknüpft werden, finden Sie die .NET Framework 4.0-Version dieses Themas behandelt.

Dateien des Bearbeitungs-Veröffentlichungsprofil-(.pubxml)

Wenn Sie ein Veröffentlichungsprofil erstellen, werden zwei Dateien im PublishProfiles-Ordner erstellt: <profilename>.pubxml und <profilename>.pubxml.user. Die .pubxml.user-Datei enthält nur einige Einstellungen, die für einen bestimmten Benutzer gelten, wie ein verschlüsseltes Kennwort. Standardmäßig wird sie nicht in der Quellcodeverwaltung enthalten. In der Regel, wenn Sie die Einstellungen ändern, die mit einem Profil verknüpft sind, bearbeiten Sie die .pubxml-Datei anstatt die .pubxml.user-Datei.

Um eine Datei des Veröffentlichungsprofils (.pubxml) bearbeiten

  1. In Projektmappen-Explorer doppelklicken Sie auf die Datei, um sie zu öffnen.

  2. Wenn das Element, das Sie ändern möchten, bereits im PropertyGroup-Element, ändern Sie deren Wert ist; fügen Sie andernfalls das Element dem PropertyGroup-Element hinzu.

    Angenommen, Sie das standardmäßige setACL Verhalten der Die Bereitstellung unter Visual Studio deaktivieren möchten. Standardmäßig legt Visual Studio Leseberechtigungen auf dem Stammordner der Zielwebsite und Schreibberechtigungen für den Ordner App_Data fest. Wenn Sie wissen, dass die Standardberechtigungen für Ordner richtig sind und nicht müssen festgelegt werden, können Sie dieses Verhalten für ein bestimmtes Veröffentlichungsprofil deaktivieren, indem Sie das folgende XML zur Veröffentlichungsprofildatei hinzufügen:

    <IncludeSetACLProviderOnDestination>False</IncludeSetACLProviderOnDestination>
    

    Wenn Sie die Veröffentlichungsprofildatei öffnen, entspricht sie diesem Beispiel:

    <Project ToolsVersion="4.0" xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
      <PropertyGroup>
        <WebPublishMethod>Package</WebPublishMethod>
        <LaunchASiteUrlAfterPublish>False</LaunchASiteUrlAfterPublish>
        <SiteUrlToLaunchAfterPublish />
        <MSDeployServiceURL />
        <DeployIisAppPath />
        <RemoteSitePhysicalPath />
        <AllowUntrustedCertificate>False</AllowUntrustedCertificate>
        <SkipExtraFilesOnServer>True</SkipExtraFilesOnServer>
        <DeployAsIisApp>True</DeployAsIisApp>
        <MSDeployPublishMethod>WMSVC</MSDeployPublishMethod>
        <UserName />
        <SavePWD>True</SavePWD>
        <PublishDatabaseSettings>
          <!— this section omitted to keep the example short -->
        </PublishDatabaseSettings>
      </PropertyGroup>
    </Project>
    

    Um das standardmäßige setACL Verhalten deaktivieren, fügen Sie das Element IncludeSetACLProviderOnDestination, wie in diesem Beispiel gezeigt, in dem sie unmittelbar nach dem öffnenden PropertyGroup-Tag angezeigt:

    <Project ToolsVersion="4.0" xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
      <PropertyGroup>
        <IncludeSetACLProviderOnDestination>False</IncludeSetACLProviderOnDestination>
        <WebPublishMethod>Package</WebPublishMethod>
        <LaunchASiteUrlAfterPublish>False</LaunchASiteUrlAfterPublish>
        <SiteUrlToLaunchAfterPublish />
        <MSDeployServiceURL />
        <DeployIisAppPath />
        <RemoteSitePhysicalPath />
        <AllowUntrustedCertificate>False</AllowUntrustedCertificate>
        <SkipExtraFilesOnServer>True</SkipExtraFilesOnServer>
        <DeployAsIisApp>True</DeployAsIisApp>
        <MSDeployPublishMethod>WMSVC</MSDeployPublishMethod>
        <UserName />
        <SavePWD>True</SavePWD>
        <PublishDatabaseSettings>
          <!— this section omitted to keep the example short -->
        </PublishDatabaseSettings>
      </PropertyGroup>
    </Project>
    
  3. Speichern Sie die Datei.

Vermeiden Sie es, datenbankbezogene Einstellungen in der .pubxml-Datei zu bearbeiten, da Visual Studio diese automatisch geändert wird, während es Änderungen im Projekt sucht. Datenbankbezogene Einstellungen gehören:

  • Das PublishDatabaseSettings-Element. Dieses Element (es wird im PropertyGroup-Element.)

  • Alle ItemGroup-Elemente, die nach dem PropertyGroup-Element angezeigt werden.

Erstellen einer .wpp.targets-Datei

Einstellungen, die Sie in der .wpp.targets-Datei konfigurieren, gelten für alle Veröffentlichungsprofile zu. Im folgenden Verfahren wird erklärt, wie eine .wpp.targets-Datei erstellt.

So fügen Sie eine .wpp.targets-Datei erstellen

  1. Erstellen Sie eine neue XML-Datei im Projektordner (der gleiche Ordner, der die CSPROJ- oder VBPROJ-Datei enthält) und benennen Sie sie <projectname>.wpp.targets.

  2. Erstellen Sie ein Project-Element als das Element der obersten Ebene und darin, erstellen Sie ein PropertyGroup-Element.

  3. Fügen Sie die Einstellungen hinzu, die Sie für alle Veröffentlichungsprofile angeben möchten. Wenn Sie das standardmäßige setACL Verhalten deaktivieren möchten, fügen Sie das IncludeSetACLProviderOnDestination-Element, wie im folgenden Beispiel gezeigt:

    <?xml version="1.0" encoding="utf-8"?>
    <Project ToolsVersion="4.0" xmlns="https://schemas.microsoft.com/developer/msbuild/2003">
      <PropertyGroup>
        <IncludeSetACLProviderOnDestination>False</IncludeSetACLProviderOnDestination>
      </PropertyGroup>
    </Project>
    
  4. Speichern und schließen Sie die Datei.

  5. Schließen Sie Visual Studio und öffnen Sie es erneut.

    Da Visual Studio TARGETS-Dateien zwischenspeichert, die vorgenommenen Änderungen zu einer von ihnen Macht effektiv nicht sein, bis das nächste Mal wenn Visual Studio geöffnet ist.

Sie können die .wpp.targets-Datei auch verwenden, um die Webpublishingpipeline für komplexere Arten zu erweitern. Beispielsweise können Sie das standardmäßige Verhalten setACL bleiben jedoch die Einstellung von Schreibberechtigungen auf einem anderen Ordner App_Data zusätzlich zu automatisieren. Informationen hierzu finden Sie unter Einstellen von Ordnerberechtigungen auf Internet veröffentlichen in Sayed Hashimis Blog.

Siehe auch

Konzepte

Einstieg in die Webbereitstellung für Visual Studio und ASP.NET