Clase SPFeature

Representa el estado de una característica en su ámbito correspondiente.

Jerarquía de la herencia

System.Object
  Microsoft.SharePoint.SPFeature

Espacio de nombres:  Microsoft.SharePoint
Ensamblado:  Microsoft.SharePoint (en Microsoft.SharePoint.dll)

Sintaxis

'Declaración
Public NotInheritable Class SPFeature
'Uso
Dim instance As SPFeature
public sealed class SPFeature

Comentarios

La presencia de un objeto SPFeature en una colección en la granja de servidores, la aplicación Web, la colección de sitios o el nivel de sitio Web indica que la característica está activada. Falta de un objeto SPFeature indica que el objeto no se ha activado.

Utilice la propiedad Features de la clase SPWebService, SPWebApplication, SPSiteo SPWeb para obtener la colección de características que se activan en la granja de servidores, aplicación Web, colección de sitios o sitio Web. Utilice la propiedad SiteFeatures o WebFeatures de la clase SPContext para obtener la colección de características de la colección de sitios actual o el sitio.

Utilice un indizador para devolver una única característica de la colección. Por ejemplo, si la colección se asigna a una variable denominada collFeatures, use collFeatures[index] en C# o collFeatures(index) en Visual Basic, donde index es el GUID de la característica.

Ejemplos

En el ejemplo de código siguiente se instala una característica en la granja de servidores y la activa en un sitio Web especificado.

En este ejemplo se requieren using directivas (Imports en Visual Basic) para los espacios de nombres Microsoft.SharePoint y 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>")

Nota

Determinados objetos implementan la interfaz de IDisposable y, a continuación, se debe evitar la conservación de estos objetos en la memoria que ya no se necesitan. Para obtener información acerca de buenas prácticas de codificación, vea Disposing Objects.

Seguridad para subprocesos

Los miembros static (Shared en Visual Basic) públicos de este tipo son seguros para subprocesos. No se garantiza que los miembros de instancias sean seguros para los subprocesos.

Vea también

Referencia

Miembros SPFeature

Espacio de nombres Microsoft.SharePoint