protected override void ExecuteCmdlet() { var serverRelativeWebUrl = CurrentWeb.EnsureProperty(w => w.ServerRelativeUrl); if (!ServerRelativePageUrl.ToLowerInvariant().StartsWith(serverRelativeWebUrl.ToLowerInvariant())) { ServerRelativePageUrl = UrlUtility.Combine(serverRelativeWebUrl, ServerRelativePageUrl); } if (ParameterSetName == "NAME") { CurrentWeb.DeleteWebPart(ServerRelativePageUrl, Title); } else { var wps = CurrentWeb.GetWebParts(ServerRelativePageUrl); var wp = from w in wps where w.Id == Identity select w; var webPartDefinitions = wp as WebPartDefinition[] ?? wp.ToArray(); if (webPartDefinitions.Any()) { webPartDefinitions.FirstOrDefault().DeleteWebPart(); ClientContext.ExecuteQueryRetry(); } } }