Share via


SPFeature class

Representa o estado de um recurso em seu escopo correspondente.

Inheritance hierarchy

System.Object
  Microsoft.SharePoint.SPFeature

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

Syntax

'Declaração
Public NotInheritable Class SPFeature
'Uso
Dim instance As SPFeature
public sealed class SPFeature

Comentários

A presença de um objeto SPFeature em uma coleção com o farm de servidores, aplicação Web, conjunto de sites ou site da Web de nível indica que o recurso está ativado. Falta de um objeto de SPFeature indica que o objeto não foi ativado.

Use a propriedade Features da classe SPWebService, SPWebApplication, SPSiteou SPWeb para obter a coleção de recursos que são ativados no farm de servidor, aplicativo Web, conjunto de sites ou site da Web. Use a propriedade SiteFeatures ou WebFeatures da classe SPContext para obter a coleção de recursos para o atual conjunto de sites ou site.

Use um indexador para retornar um único recurso da coleção. Por exemplo, se a coleção for atribuída a uma variável chamada collFeatures, use collFeatures[index] em C# ou deindexde collFeatures() no Visual Basic, onde index é o GUID do recurso.

Examples

O exemplo de código a seguir instala um recurso no farm de servidores e ativa-lo em um site da Web especificado.

Este exemplo requer diretivas de using (Imports no Visual Basic) para os namespaces Microsoft.SharePoint e Microsoft.SharePoint.Utilities .

System.Globalization.CultureInfo oCultureInfo = new System.Globalization.CultureInfo(1033);
SPFeatureDefinitionCollection collFeatureDefinitions = SPFarm.Local.FeatureDefinitions;

Guid guidFeatureID = new Guid("3C4CD219-D8A7-4fef-BED4-ABA672F7A21A");

SPFeatureDefinition oFeatureDefinition = 
  collFeatureDefinitions.Add("Feature_Folder\\feature.xml", guidFeatureID);

Response.Write(SPEncode.HtmlEncode(oFeatureDefinition.GetTitle(oCultureInfo)) + " installed.<BR>");

SPFeatureCollection collFeatures = SPContext.Current.Site.AllWebs["Site"].Features;
SPFeature oFeature = collFeatures.Add(guidFeatureID);

Response.Write(SPEncode.HtmlEncode(oFeature.Definition.GetTitle(oCultureInfo)) + " activated.<BR>");
Dim oCultureInfo As New System.Globalization.CultureInfo(1033)
Dim collFeatureDefinitions As SPFeatureDefinitionCollection = SPFarm.Local.FeatureDefinitions

Dim guidFeatureID As New Guid("3C4CD219-D8A7-4fef-BED4-ABA672F7A21A")

Dim oFeatureDefinition As SPFeatureDefinition = collFeatureDefinitions.Add("Feature_Folder\feature.xml", guidFeatureID)

Response.Write(SPEncode.HtmlEncode(oFeatureDefinition.GetTitle(oCultureInfo)) & " installed.<BR>")

Dim collFeatures As SPFeatureCollection = SPContext.Current.Site.AllWebs("Site").Features
Dim oFeature As SPFeature = collFeatures.Add(guidFeatureID)

Response.Write(SPEncode.HtmlEncode(oFeature.Definition.GetTitle(oCultureInfo)) & " activated.<BR>")

Dica

Determinados objetos implementam a interface IDisposable , e você deve evitar reter esses objetos na memória depois que eles não são mais necessários. Para obter informações sobre boas práticas de codificação, consulte Disposing Objects.

Thread safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Ver também

Referência

SPFeature members

Microsoft.SharePoint namespace