SPFarm class
Representa um farm de Microsoft SharePoint Foundation .
System.Object
Microsoft.SharePoint.Administration.SPAutoSerializingObject
Microsoft.SharePoint.Administration.SPPersistedObject
Microsoft.SharePoint.Administration.SPPersistedUpgradableObject
Microsoft.SharePoint.Administration.SPFarm
Namespace: Microsoft.SharePoint.Administration
Assembly: Microsoft.SharePoint (in Microsoft.SharePoint.dll)
'Declaração
<GuidAttribute("674DA553-EA77-44a3-B9F8-3F70D786DE6A")> _
<UpgradableAttribute> _
<SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel := True)> _
<SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel := True)> _
Public Class SPFarm _
Inherits SPPersistedUpgradableObject _
Implements IBackupRestoreConfiguration, IBackupRestore, IMigratable
'Uso
Dim instance As SPFarm
[GuidAttribute("674DA553-EA77-44a3-B9F8-3F70D786DE6A")]
[UpgradableAttribute]
[SharePointPermissionAttribute(SecurityAction.LinkDemand, ObjectModel = true)]
[SharePointPermissionAttribute(SecurityAction.InheritanceDemand, ObjectModel = true)]
public class SPFarm : SPPersistedUpgradableObject, IBackupRestoreConfiguration,
IBackupRestore, IMigratable
O objeto SPFarm é o nó superior no modelo de objeto de configuração extensível, que é projetado para interagir com o armazenamento de dados de configuração. Ele contém configurações globais para todos os servidores, serviços e soluções que estão instaladas em um farm de servidores. Use a propriedade Servers, Servicesou Solutions para recuperar essas coleções.
Para acessar o objeto atual do server farm, você pode usar membros em SPFarm.Local. Por exemplo, para retornar um objeto SPServiceCollection que representa a coleção de serviços no farm de servidores atual, use SPFarm.Local.Services. Além disso, você pode usar a propriedade Farm de classes que derivam da classe SPPersistedObject , ou você pode usar a propriedade Farm da classe SPSolution , para obter o farm de servidores do objeto atual ou da solução.
O exemplo a seguir registra uma definição de trabalho personalizado em cada aplicativo Web no farm de servidores atual.
Dim farm As SPFarm = SPFarm.Local
Dim service As SPWebService = farm.Services.GetValue < SPWebService > ""
Dim webApp As SPWebApplication
For Each webApp In service.WebApplications
Dim job As SPJobDefinition
For Each job In webApp.JobDefinitions
If job.Name = "MyCustomJobDefinitionName" Then
j.Delete()
End If
Next job
Dim newJob As New MyCustomJobDefinition("MyCustomJobDefinitionName", webApp)
Dim schedule As SPSchedule = SPSchedule.FromString("every 5 minutes between 0 and 59")
newJob.Schedule = schedule
newJob.Update()
Next webApp
SPFarm farm = SPFarm.Local;
SPWebService service = farm.Services.GetValue<SPWebService>("");
foreach (SPWebApplication webApp in service.WebApplications)
{
foreach (SPJobDefinition job in webApp.JobDefinitions)
{
if (job.Name == "MyCustomJobDefinitionName")
{
j.Delete();
}
}
MyCustomJobDefinition newJob = new
MyCustomJobDefinition("MyCustomJobDefinitionName", webApp);
SPSchedule schedule = SPSchedule.FromString("every 5 minutes between 0 and 59");
newJob.Schedule = schedule;
newJob.Update();
}
Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.