/// <summary> /// Checks if a feature is active in the given FeatureCollection. /// </summary> /// <param name="features">FeatureCollection to check in</param> /// <param name="featureID">ID of the feature to check</param> /// <param name="noRetry">Use regular ExecuteQuery</param> /// <returns>True if active, false otherwise</returns> private static async Task <bool> IsFeatureActiveInternal(FeatureCollection features, Guid featureID, bool noRetry = false) { var featureIsActive = false; features.ClearObjectData(); features.Context.Load(features); if (noRetry) { string clientTag = $"{PnPCoreUtilities.PnPCoreVersionTag}:ProcessFeatureInternal"; if (clientTag.Length > 32) { clientTag = clientTag.Substring(0, 32); } features.Context.ClientTag = clientTag; // Don't update this to ExecuteQueryRetry await features.Context.ExecuteQueryAsync(); } else { await features.Context.ExecuteQueryRetryAsync(); } var iprFeature = features.GetById(featureID); iprFeature.EnsureProperties(f => f.DefinitionId); if (iprFeature != null && iprFeature.IsPropertyAvailable("DefinitionId") && !iprFeature.ServerObjectIsNull.Value && iprFeature.DefinitionId.Equals(featureID)) { featureIsActive = true; } return(featureIsActive); }
private static bool IsFeatureActiveInternal(FeatureCollection features, Guid featureID, bool noRetry = false) #endif { var featureIsActive = false; features.ClearObjectData(); features.Context.Load(features); if (noRetry) { string clientTag = $"{PnPCoreUtilities.PnPCoreVersionTag}:ProcessFeatureInternal"; if (clientTag.Length > 32) { clientTag = clientTag.Substring(0, 32); } features.Context.ClientTag = clientTag; #if NETSTANDARD2_0 (features.Context as ClientContext).FormDigestHandlingEnabled = false; #endif // Don't update this to ExecuteQueryRetry #if !ONPREMISES await features.Context.ExecuteQueryAsync(); #else features.Context.ExecuteQuery(); #endif } else { #if !ONPREMISES await features.Context.ExecuteQueryRetryAsync(); #else features.Context.ExecuteQueryRetry(); #endif } var iprFeature = features.GetById(featureID); iprFeature.EnsureProperties(f => f.DefinitionId); if (iprFeature != null && iprFeature.IsPropertyAvailable("DefinitionId") && !iprFeature.ServerObjectIsNull.Value && iprFeature.DefinitionId.Equals(featureID)) { featureIsActive = true; } return(featureIsActive); }
/// <summary> /// Checks if a feature is active in the given FeatureCollection. /// </summary> /// <param name="features">FeatureCollection to check in</param> /// <param name="featureID">ID of the feature to check</param> /// <returns>True if active, false otherwise</returns> private static bool IsFeatureActiveInternal(FeatureCollection features, Guid featureID) { bool featureIsActive = false; features.ClearObjectData(); features.Context.Load(features); features.Context.ExecuteQueryRetry(); Feature iprFeature = features.GetById(featureID); iprFeature.EnsureProperties(f => f.DefinitionId); if (iprFeature != null && iprFeature.IsPropertyAvailable("DefinitionId") && !iprFeature.ServerObjectIsNull.Value && iprFeature.DefinitionId.Equals(featureID)) { featureIsActive = true; } return(featureIsActive); }
/// <summary> /// Checks if a feature is active in the given FeatureCollection. /// </summary> /// <param name="features">FeatureCollection to check in</param> /// <param name="featureID">ID of the feature to check</param> /// <param name="noRetry">Use regular ExecuteQuery</param> /// <returns>True if active, false otherwise</returns> private static bool IsFeatureActiveInternal(FeatureCollection features, Guid featureID, bool noRetry=false) { var featureIsActive = false; features.ClearObjectData(); features.Context.Load(features); if (noRetry) { string clientTag = $"{PnPCoreUtilities.PnPCoreVersionTag}:ProcessFeatureInternal"; if (clientTag.Length > 32) { clientTag = clientTag.Substring(0, 32); } features.Context.ClientTag = clientTag; // Don't update this to ExecuteQueryRetry features.Context.ExecuteQuery(); } else { features.Context.ExecuteQueryRetry(); } var iprFeature = features.GetById(featureID); iprFeature.EnsureProperties(f => f.DefinitionId); if (iprFeature != null && iprFeature.IsPropertyAvailable("DefinitionId") && !iprFeature.ServerObjectIsNull.Value && iprFeature.DefinitionId.Equals(featureID)) { featureIsActive = true; } return featureIsActive; }
/// <summary> /// Checks if a feature is active in the given FeatureCollection. /// </summary> /// <param name="features">FeatureCollection to check in</param> /// <param name="featureID">ID of the feature to check</param> /// <returns>True if active, false otherwise</returns> private static bool IsFeatureActiveInternal(FeatureCollection features, Guid featureID) { bool featureIsActive = false; features.ClearObjectData(); features.Context.Load(features); features.Context.ExecuteQueryRetry(); Feature iprFeature = features.GetById(featureID); iprFeature.EnsureProperties(f => f.DefinitionId); if (iprFeature != null && iprFeature.IsPropertyAvailable("DefinitionId") && !iprFeature.ServerObjectIsNull.Value && iprFeature.DefinitionId.Equals(featureID)) { featureIsActive = true; } return featureIsActive; }