(String, String, String, UInt32, SPWebTemplate, Boolean, Boolean) del método SPWebCollection.Add
Crea un objeto SPWeb con la dirección URL relativa al sitio especificado, título, descripción, el identificador de configuración regional y definición de sitio u objeto de plantilla de sitio.
Espacio de nombres: Microsoft.SharePoint
Ensamblado: Microsoft.SharePoint (en Microsoft.SharePoint.dll)
Sintaxis
'Declaración
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
Tipo: System.StringUna cadena que contiene la dirección URL de sitio Web nuevo en relación con el sitio Web raíz de la colección de sitios. Por ejemplo, para crear un sitio Web en http://MyServer/sites/MySiteCollection/MyNewWebsite, especifique MyNewWebsite, o para crear una sitio Web en un nivel inferior en http://MyServer/sites/MySiteCollection/Website/MyNewWebsite, especifique Website/MyNewWebsite.
strTitle
Tipo: System.StringUna cadena que contiene el título.
strDescription
Tipo: System.StringUna cadena que contiene la descripción.
nLCID
Tipo: System.UInt32Un entero de 32 bits sin signo que especifica el identificador de configuración regional.
WebTemplate
Tipo: Microsoft.SharePoint.SPWebTemplateUn objeto SPWebTemplate que representa la plantilla de sitio o definición de sitio.
useUniquePermissions
Tipo: System.Booleantrue para crear un subsitio que herede los permisos de otro sitio. en caso contrario, false.
bConvertIfThere
Tipo: System.Booleantrue para convertir una carpeta existente del mismo nombre en un sitio de SharePoint. false para producir una excepción que indica que ya existe una ruta de acceso de dirección URL con el nombre del sitio especificado.
Valor devuelto
Tipo: Microsoft.SharePoint.SPWeb
Objeto SPWeb que representa el sitio Web.
Comentarios
De forma predeterminada, se agrega una plantilla de sitio globales (GLOBAL#0) para todas las definiciones de sitio. No se puede crear explícitamente un sitio basado en la plantilla de sitio global.
Ejemplos
En el siguiente ejemplo es parte de un proyecto más grande que usa una característica con ámbito de Web para crear un subsitio debajo del sitio Web donde se activa la característica. La característica incluye un controlador de eventos que implementa la clase SPFeatureReceiver . Código para crear el subsitio está en el método de FeatureActivated del receptor de características.
Después de crear el nuevo sitio Web, el código de ejemplo agrega un vínculo a ella a la barra de vínculos superior del sitio primario o, si el elemento primario hereda vínculos a Inicio rápido del sitio primario.
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