/// <summary>forcefully removes a feature definition from the farm feature definition collection</summary> /// <param name="id">Feature Definition ID</param> public static int Uninstall(Guid id, int compatibilityLevel, bool force, out Exception exception) { var processingCounter = 0; exception = null; try { var featureDefinitions = FarmRead.GetFeatureDefinitionCollection(); var featureDefinitionsBefore = featureDefinitions.Count; #if (SP2013) { featureDefinitions.Remove(id, compatibilityLevel, force); } #else { featureDefinitions.Remove(id, force); } #endif processingCounter = featureDefinitionsBefore - featureDefinitions.Count; if (processingCounter > 0) { SingletonDb.Singleton.InMemoryDb.RemoveUninstalledFeatureDefinition(id); } } catch (Exception ex) { exception = ex; } return(processingCounter); }
private List <FeatureDefinition> LoadAllFeatureDefinitions() { var spDefs = FarmRead.GetFeatureDefinitionCollection(); return(FeatureDefinition.GetFeatureDefinition(spDefs)); }