SPFeature - Classe

Représente l'état d'une fonctionnalité à son champ d'application correspondante.

Hiérarchie d’héritage

System.Object
  Microsoft.SharePoint.SPFeature

Espace de noms :  Microsoft.SharePoint
Assembly :  Microsoft.SharePoint (dans Microsoft.SharePoint.dll)

Syntaxe

'Déclaration
Public NotInheritable Class SPFeature
'Utilisation
Dim instance As SPFeature
public sealed class SPFeature

Remarques

La présence d'un objet SPFeature dans une collection au niveau de la batterie de serveurs, application Web, collection de sites ou au niveau site Web indique que la fonctionnalité est activée. Absence d'un objet SPFeature indique que l'objet n'a pas été activé.

Utilisez la propriété Features de la classe SPWebService, SPWebApplication, SPSiteou SPWeb pour obtenir la collection de fonctionnalités qui sont activés dans la batterie de serveurs, Web application, collection de sites ou site Web. Utilisez la propriété SiteFeatures ou WebFeatures de la classe SPContext pour obtenir la collection de fonctionnalités du site ou de collection de sites actuelle.

Un indexeur permet de renvoyer une fonctionnalité unique de la collection. Par exemple, si la collection est assignée à une variable nommée collFeatures, utilisez collFeatures[index] dans C# ou collFeatures(index) dans Visual Basic, où index est le GUID de la fonctionnalité.

Exemples

L'exemple de code suivant installe une fonctionnalité dans la batterie de serveurs et il active dans un site Web spécifié.

Cet exemple requiert les directives using (Imports dans Visual Basic) pour les espaces de noms Microsoft.SharePoint et 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>")

Notes

Certains objets implémentent l'interface IDisposable , et vous devez éviter de conserver ces objets dans la mémoire après que qu'ils ne sont plus nécessaires. Pour plus d'informations sur les bonnes pratiques de codage, consultez Disposing Objects.

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.

Voir aussi

Référence

SPFeature - Membres

Microsoft.SharePoint - Espace de noms