SPVirtualServerCollection - Classe
Remarque : cette API est désormais obsolète.
Obsolète. Utilisez la classe SPWebApplicationCollection . (Dans Windows SharePoint Services 2.0, la classe SPVirtualServerCollection représenté une collection d'objets SPVirtualServer et est conservée pour la compatibilité ascendante.)
Hiérarchie d’héritage
System.Object
Microsoft.SharePoint.Administration.SPAutoSerializingObject
Microsoft.SharePoint.SPBaseCollection
Microsoft.SharePoint.Administration.SPVirtualServerCollection
Espace de noms : Microsoft.SharePoint.Administration
Assembly : Microsoft.SharePoint (dans Microsoft.SharePoint.dll)
Syntaxe
'Déclaration
<ObsoleteAttribute("The SPVirtualServerCollection class is deprecated. Use an SPWebApplicationCollection instead.", _
False)> _
<SharePointPermissionAttribute(SecurityAction.Demand, ObjectModel := True)> _
Public NotInheritable Class SPVirtualServerCollection _
Inherits SPBaseCollection
'Utilisation
Dim instance As SPVirtualServerCollection
[ObsoleteAttribute("The SPVirtualServerCollection class is deprecated. Use an SPWebApplicationCollection instead.",
false)]
[SharePointPermissionAttribute(SecurityAction.Demand, ObjectModel = true)]
public sealed class SPVirtualServerCollection : SPBaseCollection
Remarques
Utilisez la propriété VirtualServers de la classe SPGlobalAdmin pour renvoyer tous les serveurs virtuels dans le déploiement de Microsoft SharePoint Foundation.
Pour créer un serveur virtuel d'administration, utilisez la méthode CreateAdminVirtualServer de la classe SPGlobalAdmin . Pour étendre un serveur virtuel, utilisez une des méthodes de la classe SPGlobalAdminExtendVirtualServer .
Pour renvoyer un seul serveur virtuel à partir de la collection, utilisez un indexeur. Par exemple, si la collection est assignée à une variable nommée myVirtualServers, utilisez myVirtualServers[index] dans C# ou myVirtualServers(index) dans Visual Basic .NET, où index est le numéro d'index du serveur dans la collection.
Exemples
L'exemple de code suivant parcourt la collection de serveurs virtuels dans un déploiement et étend les serveurs virtuels qui n'ont pas été étendues avec SharePoint Foundation et crée un site de niveau supérieur pour chaque.
Cet exemple suppose la présence d'un digest du formulaire d'administration dans le fichier .cs ou .vb. Pour plus d'informations sur la validation de la sécurité, consultez Validation de la sécurité et rendre les publications à mise à jour de données.
[Visual Basic .NET]
Dim globalAdmin As New SPGlobalAdmin()
Dim vServers As SPVirtualServerCollection = globalAdmin.VirtualServers
Dim i As Integer
For i = 0 To vServers.Count - 1
If vServers(i).State = SPVirtualServerState.NeedExtend Then
Dim uri As New System.Uri(vServers(i).Url.ToString())
Try
Dim newSPServer As SPVirtualServer = globalAdmin.ExtendVirtualServer( _
"Database_Server", _
"Database_Name" + i.ToString(), _
Nothing, Nothing, uri, False, "StsAppPool1", False, _
Nothing, Nothing)
Dim sites As SPSiteCollection = newSPServer.Sites
sites.Add(newSPServer.Url.ToString(), "DOMAIN\User_Alias", "Email_Address")
Catch ex As System.Exception
Response.Write(ex.Message + ControlChars.Lf + ControlChars.Lf + ex.StackTrace)
End Try
End If
Next i
[C#]
SPGlobalAdmin globalAdmin = new SPGlobalAdmin();
SPVirtualServerCollection vServers = globalAdmin.VirtualServers;
for (int i=0; i < vServers.Count; i++)
{
if (vServers[i].State == SPVirtualServerState.NeedExtend)
{
System.Uri uri = new System.Uri(vServers[i].Url.ToString() );
try
{
SPVirtualServer newSPServer = globalAdmin.ExtendVirtualServer(
"Database_Server",
"Database_Name" + i.ToString(),
null, null, uri, false, "StsAppPool1", false, null, null);
SPSiteCollection sites = newSPServer.Sites;
sites.Add(newSPServer.Url.ToString(),"DOMAIN\\User_Alias","Email_Address");
}
catch (System.Exception ex)
{
Response.Write(ex.Message + "\n\n" + ex.StackTrace);
}
}
}
Cohérence de thread
Tous les membres statique (Partagé dans Visual Basic)s publics de ce type sont thread-safe. Cela n’est pas garanti pour les membres d’instance.