mirror of
https://github.com/OrchardCMS/Orchard.git
synced 2025-10-15 19:54:57 +08:00
@@ -1,21 +1,17 @@
|
||||
using System;
|
||||
using Orchard.ContentManagement.Handlers;
|
||||
using Orchard.Data;
|
||||
using Orchard.FileSystems.Media;
|
||||
using Orchard.MediaLibrary.Services;
|
||||
using Orchard.MediaLibrary.Models;
|
||||
|
||||
namespace Orchard.MediaLibrary.Handlers {
|
||||
public class MediaPartHandler : ContentHandler {
|
||||
private readonly IMediaLibraryService _mediaLibraryService;
|
||||
private readonly IStorageProvider _storageProvider;
|
||||
|
||||
public MediaPartHandler(
|
||||
IMediaLibraryService mediaLibraryService,
|
||||
IRepository<MediaPartRecord> repository,
|
||||
IStorageProvider storageProvider) {
|
||||
IRepository<MediaPartRecord> repository) {
|
||||
_mediaLibraryService = mediaLibraryService;
|
||||
_storageProvider = storageProvider;
|
||||
|
||||
Filters.Add(StorageFilter.For(repository));
|
||||
OnRemoving<MediaPart>((context, part) => RemoveMedia(part));
|
||||
@@ -63,8 +59,7 @@ namespace Orchard.MediaLibrary.Handlers {
|
||||
|
||||
protected void RemoveMedia(MediaPart part) {
|
||||
if (!string.IsNullOrEmpty(part.FileName)) {
|
||||
var path = _storageProvider.Combine(part.FolderPath, part.FileName);
|
||||
_storageProvider.DeleteFile(path);
|
||||
_mediaLibraryService.DeleteFile(part.FolderPath, part.FileName);
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user