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
web
Typ: Microsoft.SharePoint.SPWebDie Website zu exportieren.
solutionFilePath
Typ: System.StringDer 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.StringDer 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.StringAusfü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.ExportModeGibt 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.Booleantrue 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 |
|
Listeninstanzen |
Web |
|
Module |
Web |
|
Eigenschaftenbehälter |
Web |
|
Workflows |
Web |
|
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
Microsoft.SharePoint-Namespace