SPWebCollection.Add method (String, String, String, UInt32, SPWebTemplate, Boolean, Boolean)
Cria um objeto SPWeb com a URL do site relativa especificada, título, descrição, ID de localidade e definição de site ou objeto de modelo de site.
Namespace: Microsoft.SharePoint
Assembly: Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Syntax
'Declaração
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
'Uso
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
)
Parâmetros
strWebUrl
Type: System.StringUma cadeia de caracteres que contém a nova URL do site em relação ao site da raiz do conjunto de sites. Por exemplo, para criar um site no http://MyServer/sites/MySiteCollection/MyNewWebsite, especifique MyNewWebsiteou para criar um nível de um site inferior em http://MyServer/sites/MySiteCollection/Website/MyNewWebsite, especifique Website/MyNewWebsite.
strTitle
Type: System.StringUma cadeia de caracteres que contém o título.
strDescription
Type: System.StringUma string que contém a descrição.
nLCID
Type: System.UInt32Um inteiro não assinado de 32 bits que especifica a ID de localidade.
WebTemplate
Type: Microsoft.SharePoint.SPWebTemplateUm objeto SPWebTemplate que representa a definição de site ou de um modelo de site.
useUniquePermissions
Type: System.Booleantrue para criar um subsite que não herdam permissões de outro site; Caso contrário, false.
bConvertIfThere
Type: System.Booleantrue para converter uma pasta existente do mesmo nome em um site do SharePoint. false gerar uma exceção que indica que já existe um caminho de URL com o nome do site especificado.
Valor retornado
Type: Microsoft.SharePoint.SPWeb
Um objeto SPWeb que representa o site.
Comentários
Por padrão, um modelo de site global (GLOBAL#0) é adicionado a todas as definições de site. Você não pode criar explicitamente um site baseado no modelo de site global.
Examples
O exemplo a seguir faz parte de um projeto maior que usa um recurso de escopo da Web para criar um subsite abaixo do site do qual o recurso está ativado. O recurso inclui um manipulador de eventos que implementa a classe SPFeatureReceiver . Código para criar um subsite é no método de FeatureActivated do receptor de recursos.
Depois de criar o novo site, o código de exemplo adiciona um link a ela à barra de links superior do site pai ou, se o pai herda links para o início rápido do site pai.
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