Класс SPFeature
Представляет состояние функции в соответствующую область.
Иерархия наследования
System.Object
Microsoft.SharePoint.SPFeature
Пространство имен: Microsoft.SharePoint
Сборка: Microsoft.SharePoint (в Microsoft.SharePoint.dll)
Синтаксис
'Декларация
Public NotInheritable Class SPFeature
'Применение
Dim instance As SPFeature
public sealed class SPFeature
Замечания
Наличие объекта SPFeature в коллекции уровне фермы серверов, веб-приложения, семейства веб-сайтов или веб-узла указывает, что компонент активируется. Отсутствие объекта SPFeature указывает, что объект не был активирован.
Свойство Features класса SPWebService, SPWebApplication, SPSiteили SPWeb для получения коллекции функций, которые активируются в ферме серверов, приложения Web, семейства веб-сайтов или веб-узла. Используйте свойство SiteFeatures или WebFeatures класса SPContext для получения коллекции возможностей для текущего семейства веб-сайтов или веб-узла.
Используйте индексатор для получения одной функции из коллекции. Например если коллекция присваивается переменной с именем collFeatures, используйтеindexcollFeatures[] в C# илиindexcollFeatures() в Visual Basic, где index — это GUID компонента.
Примеры
В следующем примере устанавливает компонент в ферме серверов и активирует его в указанный веб-узел.
В этом примере требуется директивы using (Imports в Visual Basic) для пространства имен Microsoft.SharePoint и 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>")
Примечание
Некоторые объекты реализуют интерфейс IDisposable и следует избегать сохранения этих объектов в памяти, после они больше не нужны. Disposing Objectsсведения о рекомендованные методы программирования, см.
Потокобезопасность
Любые общедоступные элементы static (Shared в Visual Basic) этого типа являются потокобезопасными. Не гарантируется, что любые элементы экземпляров потокобезопасны.