Freigeben über


SPWebCollection.Add-Methode (String, String, String, UInt32, SPWebTemplate, Boolean, Boolean)

Erstellt ein SPWeb -Objekt mit der angegebenen websiterelative URL, Titel, Beschreibung, Gebietsschema-ID und der Websitedefinition oder Site Template-Objekt.

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

Syntax

'Declaration
Public Function Add ( _
    strWebUrl As String, _
    strTitle As String, _
    strDescription As String, _
    nLCID As UInteger, _
    WebTemplate As SPWebTemplate, _
    useUniquePermissions As Boolean, _
    bConvertIfThere As Boolean _
) As SPWeb
'Usage
Dim instance As SPWebCollection
Dim strWebUrl As String
Dim strTitle As String
Dim strDescription As String
Dim nLCID As UInteger
Dim WebTemplate As SPWebTemplate
Dim useUniquePermissions As Boolean
Dim bConvertIfThere As Boolean
Dim returnValue As SPWeb

returnValue = instance.Add(strWebUrl, _
    strTitle, strDescription, nLCID, _
    WebTemplate, useUniquePermissions, _
    bConvertIfThere)
public SPWeb Add(
    string strWebUrl,
    string strTitle,
    string strDescription,
    uint nLCID,
    SPWebTemplate WebTemplate,
    bool useUniquePermissions,
    bool bConvertIfThere
)

Parameter

  • strWebUrl
    Typ: System.String

    Eine Zeichenfolge, die die neue Website-URL relativ zu der Stammwebsite in der Websitesammlung enthält. Erstellen einer Website unter http://MyServer/sites/MySiteCollection/MyNewWebsite, geben Sie MyNewWebsiteoder eine Website eine Ebene niedriger auf http://MyServer/sites/MySiteCollection/Website/MyNewWebsitezu erstellen, geben Sie beispielsweise Website/MyNewWebsite.

  • strTitle
    Typ: System.String

    Eine Zeichenfolge, die den Titel enthält.

  • strDescription
    Typ: System.String

    Eine Zeichenfolge, die Beschreibung enthält.

  • nLCID
    Typ: System.UInt32

    Eine 32-Bit-Ganzzahl ohne Vorzeichen, die angibt, die Gebietsschema-ID.

  • useUniquePermissions
    Typ: System.Boolean

    true zum Erstellen einer Unterwebsite, die keine Berechtigungen aus einer anderen Website erbt; andernfalls false.

  • bConvertIfThere
    Typ: System.Boolean

    true , um einen vorhandenen Ordner mit demselben Namen in einer SharePoint-Website zu konvertieren. false eine Ausnahme ausgelöst, die angibt, dass ein URL-Pfad mit dem Namen der angegebenen Website bereits vorhanden ist.

Rückgabewert

Typ: Microsoft.SharePoint.SPWeb
Ein SPWeb -Objekt, das die Website darstellt.

Hinweise

Standardmäßig wird allen Websitedefinitionen eine globalen Vorlage (GLOBAL#0) hinzugefügt. Sie können nicht explizit eine Website basierend auf der globalen Websitevorlage erstellen.

Beispiele

Das folgende Beispiel ist Teil einer größeren Projekt, das ein Feature mit Web-Bereich wird verwendet, um eine Unterwebsite unterhalb der Website zu erstellen, in dem das Feature aktiviert ist. Das Feature umfasst einen Ereignishandler, der die SPFeatureReceiver -Klasse implementiert. Code zum Erstellen der Unterwebsites ist in den Featureempfänger FeatureActivated -Methode.

Nach dem Erstellen der neuen Website an, fügt der Beispielcode einen Link hinzu, auf der übergeordneten Website-Leiste für häufig verwendete Hyperlinks oder, wenn das übergeordnete Objekt Links, um die Schnellstartleiste der übergeordneten Website erbt.

public override void FeatureActivated(SPFeatureReceiverProperties properties)
{
    // Get the web site where the feature is activated.
    SPWeb parentWeb = properties.Feature.Parent as SPWeb;
    if (parentWeb == null)
        return;

    SPWeb childWeb = null;
    string childName = "ourwiki";

    // If a subsite by that name exists, open it.
    string[] webs = parentWeb.Webs.Names;
    if (webs != null && Array.IndexOf(webs, childName) >= 0)
    {
        childWeb = parentWeb.Webs[childName];
    }

    // Otherwise, create the subsite.
    if (childWeb == null)
    {
        string title = "Wiki";
        string desc = "A place to capture knowledge.";
        uint lcid = parentWeb.Language;

        string templateName = "WIKI#0";

        childWeb = parentWeb.Webs.Add(childName, title, desc, lcid, templateName, false, false);
    }

    // Let the subsite use the parent site's top link bar.
    childWeb.Navigation.UseShared = true;

    // Get a collection of navigation nodes.
    SPNavigationNodeCollection nodes = null;
    if (parentWeb.Navigation.UseShared)
    {
        // Parent site does not have its own top link bar
        // so use the parent's Quick Launch.
        nodes = parentWeb.Navigation.QuickLaunch;
    }
    else
    {
        // Parent site has its own top link bar,
        // so use it.
        nodes = parentWeb.Navigation.TopNavigationBar;
    }

    // Check for an existing link to the subsite.
    SPNavigationNode node = nodes
        .Cast<SPNavigationNode>()
        .FirstOrDefault(n => n.Url.Equals(childWeb.ServerRelativeUrl));

    // No link, so add one.
    if (node == null)
    { 
        // Create the node.
        node = new SPNavigationNode(childWeb.Title, childWeb.ServerRelativeUrl);

        // Add it to the collection.
        node = nodes.AddAsLast(node);
    }

    childWeb.Dispose();
    parentWeb.Dispose();
}
Public Overrides Sub FeatureActivated(ByVal properties As SPFeatureReceiverProperties)

    'Get the web site where the feature is activated.
    Dim parentWeb As SPWeb = TryCast(properties.Feature.Parent, SPWeb)
    If parentWeb Is Nothing Then
        Return
    End If

    Dim childWeb As SPWeb = Nothing
    Dim childName As String = "ourwiki"

    ' If a subsite by that name exists, open it.
    Dim webs As String() = parentWeb.Webs.Names
    If webs IsNot Nothing AndAlso Array.IndexOf(webs, childName) >= 0 Then
        childWeb = parentWeb.Webs(childName)
    End If

    ' Otherwise, create the subsite.
    If childWeb Is Nothing Then
        Dim title As String = "Wiki"
        Dim desc As String = "A place to capture knowledge."
        Dim lcid As UInteger = parentWeb.Language

        Dim templateName As String = "WIKI#0"

        childWeb = parentWeb.Webs.Add(childName, title, desc, lcid, _
                                        templateName, False, False)
    End If

    ' Let the subsite use the parent site's top link bar.
    childWeb.Navigation.UseShared = True

    ' Get a collection of navigation nodes.
    Dim nodes As SPNavigationNodeCollection = Nothing

    If parentWeb.Navigation.UseShared Then
        ' Parent site does not have its own top link bar
        ' so use the parent's Quick Launch.
        nodes = parentWeb.Navigation.QuickLaunch
    Else
        ' Parent site has its own top link bar,
        ' so use it.
        nodes = parentWeb.Navigation.TopNavigationBar
    End If

    ' Check for an existing link to the subsite.
    Dim node As SPNavigationNode = nodes.Cast(Of SPNavigationNode)().FirstOrDefault( _
        Function(n) n.Url.Equals(childWeb.ServerRelativeUrl))

    ' No link, so add one.
    If node Is Nothing Then

        ' Create the node.
        node = New SPNavigationNode(childWeb.Title, childWeb.ServerRelativeUrl)

        ' Add it to the collection.
        node = nodes.AddAsLast(node)
    End If

    childWeb.Dispose()
    parentWeb.Dispose()
End Sub

Siehe auch

Referenz

SPWebCollection Klasse

SPWebCollection-Member

Add-Überladung

Microsoft.SharePoint-Namespace