Monday, March 21, 2016

Feature Dependency SharePoint 2013

Feature Dependencies in SharePoint 2013 - Base Site Features

The feature that depend another feature to work correctly on the site called feature dependent.
In SharePoint 2013, all most all site template has its own dependency on other features.

Example,

In team site navigation hierarchies with managed meta data, requires publishing feature dependency.
Team site with default list and list template requires few feature dependencies.

Or, if you want to provision the list with event receiver, you may prefer to split the even receiver logic, site column and content type in to different feature. Finally, your list will group all the features to work as expected. In that case, no features will be activated with dependent features are activated first.

First site column features must be activated, the content type that relies on the column must be activate and finally the list definition and event receiver.

Go to C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\TEMPLATE\FEATURES
Open the “BaseSite” folder and “Feature example, it will be shown like this image,


So the base site feature id: B21B090C-C796-4b0f-AC0F-7EF1659C20AE has its dependencies on rounded blue bordered box.

Feature Name
Feature GUID
Local Directory Site Control

14AAFD3A-FCB9-4bb7-9AD7-D8E36B663BBD
Portal Layouts

5F3B0127-2F1D-4cfd-8DD2-85AD1FB00BFC
WebPart Adder groups.

2ED1C45E-A73B-4779-AE81-1524E4DE467A
Document routing resources

0C8A9A47-22A9-4798-82F1-00E62A96006E
Record Resources

5BCCB9A4-B903-4fd1-8620-B795FA33C9BA
Social Site

4326E7FC-F35A-4b0f-927C-36264B0A4CF0
Search WebParts

EAF6A128-0482-4F71-9A2F-B1C650680E77
Search templates and resources

8B2C6BCB-C47F-4F17-8127-F8EAE47A44DD
Item Form recommendations

39D18BBF-6E0F-4321-8F16-4E3B51212393



Types of Features:

  1. cross site scoped : The feature can have it dependency of the another feature that is scoped its  high level hierarchies. Example , Publishing feature in the web (sub site) scope requires the site collection scoped Publishing Infrastructure should have been activated prior to be activated on the site level.
  2. Same site scoped : Feature can have its dependency of the other feature that is scoped on the same site scope level.

    Example, A feature that provisioning the site columns should be activated before the feature that creates the content type that relies on the already available site columns in the site and its associated form template on the site.

Rules of the Feature:

  1. Feature can be set to visible or hidden through its feature definition file (Feature.xml)
  2. Hidden feature cannot have any feature dependency.
  3. Hidden feature can activated ,deactivated,installed and uninstalled through only Power shell command,So farm admin have full control on it.
  4. Feature dependencies cannot be chained.