39 lines
941 B
C#
39 lines
941 B
C#
using GozareshgirProgramManager.Domain.FileManagementAgg.Entities;
|
|
|
|
namespace GozareshgirProgramManager.Application.Services.FileManagement;
|
|
|
|
/// <summary>
|
|
/// سرویس ذخیرهسازی فایل
|
|
/// </summary>
|
|
public interface IFileStorageService
|
|
{
|
|
/// <summary>
|
|
/// آپلود فایل
|
|
/// </summary>
|
|
Task<(string StoragePath, string StorageUrl)> UploadAsync(
|
|
Stream fileStream,
|
|
string uniqueFileName,
|
|
string category);
|
|
|
|
/// <summary>
|
|
/// حذف فایل
|
|
/// </summary>
|
|
Task DeleteAsync(string storagePath);
|
|
|
|
/// <summary>
|
|
/// دریافت فایل
|
|
/// </summary>
|
|
Task<Stream?> GetFileStreamAsync(string storagePath);
|
|
|
|
/// <summary>
|
|
/// بررسی وجود فایل
|
|
/// </summary>
|
|
Task<bool> ExistsAsync(string storagePath);
|
|
|
|
/// <summary>
|
|
/// دریافت URL فایل
|
|
/// </summary>
|
|
string GetFileUrl(string storagePath);
|
|
}
|
|
|