Freigeben über


SPSolutionExporter.ExportWeb-Methode

Die angegebene Website exportiert als eine Webvorlage in einer Lösungsdatei.

Namespace:  Microsoft.SharePoint
Assembly:  Microsoft.SharePoint (in Microsoft.SharePoint.dll)

Syntax

'Declaration
Public Shared Sub ExportWeb ( _
    web As SPWeb, _
    solutionFilePath As String, _
    title As String, _
    description As String, _
    exportMode As SPSolutionExporter.ExportMode, _
    includeContent As Boolean _
)
'Usage
Dim web As SPWeb
Dim solutionFilePath As String
Dim title As String
Dim description As String
Dim exportMode As SPSolutionExporter.ExportMode
Dim includeContent As BooleanSPSolutionExporter.ExportWeb(web, solutionFilePath, _
    title, description, exportMode, includeContent)
public static void ExportWeb(
    SPWeb web,
    string solutionFilePath,
    string title,
    string description,
    SPSolutionExporter.ExportMode exportMode,
    bool includeContent
)

Parameter

  • solutionFilePath
    Typ: System.String

    Der Pfad, Dateiname und Erweiterung der Datei der Lösung, die erstellt wird. Wenn die Methode ausgeführt wird, werden Leerzeichen als andere unzulässige Zeichen werden aus dem Dateinamen entfernt. Wenn bereits eine Lösungsdatei (WSP-Datei) mit dem gleichen Namen im angegebenen Pfad vorhanden ist, wird sie überschrieben.

  • title
    Typ: System.String

    Der Titel der Websitevorlage. Der in diesem Parameter übergebene Wert ist als der Wert des Attributs Title im Project -Element eine Datei Onet.xml verwendet.

  • description
    Typ: System.String

    Ausführliche Informationen, die die Webvorlage beschreibt. Der in diesem Parameter übergebene Wert ist als der Wert des Attributs Description in das WebTemplate -Element in einem Elementmanifest und auch für den Wert des Attributs Description im Project -Element eine Datei Onet.xml verwendet.

  • exportMode
    Typ: Microsoft.SharePoint.SPSolutionExporter.ExportMode

    Gibt an, wie viel der Website exportieren. Übergeben Sie FullReuse , wenn die Webvorlage innerhalb der gleichen Websitesammlung befindet wie die exportierte Website verwendet werden sollen. übergeben Sie andernfalls FullPortability.

  • includeContent
    Typ: System.Boolean

    true die Inhalte aller Listen und Dokumentbibliotheken in der Website enthalten; andernfalls false.

Hinweise

Mit dieser Methode können Sie ein Lösungspaket erstellen, die Sie in Microsoft Visual Studio 2010 zur weiteren Bearbeitung importieren können. Weitere Informationen finden Sie unter Importieren von Elementen aus einer vorhandenen SharePoint-Website.

Die Lösung, die von dieser Methode erstellt wird enthält einige oder alle Features, die in der folgenden Tabelle aufgelistet. Features werden ausgelassen, wenn die Website keine Elemente enthält, die sie bereitstellen.

Hinweis

Die SharePoint-Lösungspaket importieren-Projektvorlage in Visual Studio 2010 ändert die Zusammensetzung des einige Features in der Lösungsdatei. Insbesondere erstellt eine separate Elementmanifest für jeden Inhaltstyp statt weiterhin alle Content Typdefinitionen in ein einziges Manifest.

Funktion

Geltungsbereich

Inhalt

Webvorlage

Site

  • Ein Elementmanifest, die ein WebTemplate -Element enthält.

  • Eine Datei Onet.xml , die Konfiguration der Website enthält.

  • Eine Ressourcendatei für die Sprache für die Standardsprache der Website. Die Datei enthält Zeichenfolgen, die aus SPUserResource Objekte wie die TitleResource , die den Anzeigetext für den Titel der Website Ablage exportiert.

Listeninstanzen

Web

  • Ein Elementmanifest für jede Liste oder Dokumentbibliothek in der Website. Das Manifest enthält ein ListInstance -Element, das die Instanz definiert.

  • Eine Datei Schema.xml für jede Liste oder Bibliothek.

  • Ein einzelnes Element-Manifest, das Field -Elemente enthält, die alle Felder verwendet für Listen und Bibliotheken zu definieren.

  • Ein einzelnes Element-Manifest, das ContentType -Elemente enthält, die alle Inhaltstypen verwendet für Listen und Bibliotheken zu definieren.

  • Eine Ressourcendatei für die Sprache für die Standardsprache der Website.

Module

Web

  • Eine oder mehrere Element-Manifeste mit ein Module -Element, Bestimmungen Formulare, benutzerdefinierte Seiten, Dokumentvorlagen und andere Dateien, die von der Website verwendet.

  • Eine Ressourcendatei für die Sprache für die Standardsprache der Website.

Eigenschaftenbehälter

Web

  • Ein einzelnes Element-Manifest, das eine Anzahl von PropertyBag-Elemente enthält, die Konfigurationsdaten und andere beibehaltenen Einstellungen auf der Website verwendeten definieren.

  • Eine Ressourcendatei für die Sprache für die Standardsprache der Website.

Workflows

Web

  • Ein Elementmanifest, die WorkflowAssociation-Elemente enthält, die in Listen auf der Website Workflowzuordnungen definieren.

  • Eine Ressourcendatei für die Sprache für die Standardsprache der Website.

Benutzerdefinierte Aktionen

Web

Ein Elementmanifest, das CustomAction -Elemente enthält, die mit Web-Bereich und den Listenbereich benutzerdefinierte Aktionen zu definieren.

Darüber hinaus definiert das Lösungsmanifest Aktivierungsabhängigkeit auf andere Benutzer-Lösungen, die für die Website aktiviert ist. Wenn Aktivierungsabhängigkeiten vorhanden sind, müssen diese Lösungen aktiviert werden, bevor die Web-Vorlage Lösung aktiviert ist.

Beispiele

Das folgende Beispiel ist eine Konsolenanwendung, die Ruft einen Verweis auf eine Website ab und speichert ihn als Vorlage Web-Lösung, Erstellen der neuen Lösungsdatei im Verzeichnis Anwendung. Die Anwendung ruft einen Verweis auf die Datei dann und druckt die Informationen in der Konsole angezeigt.

using System;
using System.IO;
using System.Linq;
using Microsoft.SharePoint;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            using (SPSite site = new SPSite("https://localhost"))
            {
                using (SPWeb web = site.RootWeb)
                {
                    string solutionFile = "TestSite.wsp";
                    string solutionPath = AppDomain.CurrentDomain.BaseDirectory;
                    string solutionFilePath = SPSolutionExporter.PathCombine(solutionPath, solutionFile);

                    string templateTitle = "Test Template";
                    string templateDesc = "This template was saved programmatically.";

                    // Save the web as a template in a solution file.
                    SPSolutionExporter.ExportWeb(
                        web,
                        solutionFilePath,
                        templateTitle,
                        templateDesc,
                        SPSolutionExporter.ExportMode.FullPortability, // Include features that the site depends upon.
                        false // Do not include content.
                     );
 
                    // Print information about the file.
                    FileInfo solutionFileInfo = new FileInfo(solutionFilePath);
                    if (solutionFileInfo.Exists)
                    {
                        Console.WriteLine("File name: {0}", solutionFileInfo.Name);
                        Console.WriteLine("File size: {0:n0} KB", solutionFileInfo.Length / 1024);
                    }
                }
            }
            Console.Write("\nPress ENTER to continue....");
            Console.ReadLine();
        }
    }
}
Imports System
Imports System.IO
Imports Microsoft.SharePoint

Module ConsoleApp

    Sub Main()

        Using site As New SPSite("https://localhost")
            Using web As SPWeb = site.RootWeb

                Dim solutionFile As String = "TestSite.wsp"
                Dim solutionPath As String = AppDomain.CurrentDomain.BaseDirectory
                Dim solutionFilePath As String = SPSolutionExporter.PathCombine(solutionPath, solutionFile)

                Dim templateTitle As String = "Test Template"
                Dim templateDesc As String = "This template was saved programmatically."

                ' Save the web as a template in a solution file.
                ' Include features that the site depends upon.
                ' Do not include content.
                SPSolutionExporter.ExportWeb(web, solutionFilePath, _
                                             templateTitle, templateDesc, _
                                             SPSolutionExporter.ExportMode.FullPortability, _
                                             False)

                ' Print information about the file.
                Dim solutionFileInfo As FileInfo = New FileInfo(solutionFilePath)
                If solutionFileInfo.Exists Then
                    Console.WriteLine("File name: {0}", solutionFileInfo.Name)
                    Console.WriteLine("File size: {0:n0} KB", solutionFileInfo.Length / 1024)
                End If

            End Using
        End Using

        Console.Write(vbCrLf & "Press ENTER to continue....")
        Console.Read()
    End Sub

End Module

Siehe auch

Referenz

SPSolutionExporter Klasse

SPSolutionExporter-Member

Microsoft.SharePoint-Namespace

Weitere Ressourcen

Site Types: WebTemplates and Site Definitions

Web Templates