/// <summary> /// Deletes a specific file version. /// </summary> /// <param name="versioningFileItem">File version.</param> /// <param name="versionId">File version Id.</param> public static void DeleteVersion(IVersioningFile versioningFileItem, string versionId) { Validate.RequiredParameter("versioningFileItem", versioningFileItem); if (String.IsNullOrEmpty(versionId)) { throw new ArgumentException("versionId can not be null or empty", "versionId"); } ThrowIfCheckedOut(versioningFileItem); IList <UnifiedVersion> versions = versioningFileItem.GetVersions(); if (versions.Count == 1) { throw new InvalidVersioningOperationException(); } UnifiedVersion targetVersion = versions.SingleOrDefault <UnifiedVersion>(v => v.Id.ToString() == versionId); if (targetVersion == null) { throw new VersionNotFoundException(versionId); } targetVersion.Delete(); }