private void RemoveAlias(FileUploadPart part) { var folders = _mediaService.GetMediaFolders("Uploads"); var folder = folders.SingleOrDefault(x => x.Name == part.Guid.ToString()); if (folder != null) { var files = _mediaService.GetMediaFiles(folder.MediaPath); foreach (var file in files) { var source = string.Format("{0}-{1}", part.Guid, file.Name); _aliasService.DeleteBySource(source); } } }
private void UpdateAlias(FileUploadPart part) { var folders = _mediaService.GetMediaFolders("Uploads"); var settings = part.TypePartDefinition.GetFileUploadPartSettings(); string url; if (!string.IsNullOrEmpty(settings.PublicMediaPath)) { url = _tokenizer.Replace(settings.PublicMediaPath, new { Content = part.ContentItem }); } else { url = part.Guid.ToString(); } var folder = folders.SingleOrDefault(x => x.Name == part.Guid.ToString()); if (folder != null) { var files = _mediaService.GetMediaFiles(folder.MediaPath); foreach (var file in files) { var source = string.Format("{0}-{1}", part.Guid, file.Name); var path = string.Format("uploads/{0}/{1}/{2}", part.Id, url, file.Name); var routeValues = new RouteValueDictionary { {"area", "Orchard.Contrib.FileUpload"}, {"controller", "FileUpload"}, {"action", "DownloadFile"}, {"id", part.Id}, {"name", file.Name} }; _aliasService.DeleteBySource(source); _aliasService.Set(path, routeValues, source); } } }