MindFile 1.0.0
dotnet add package MindFile --version 1.0.0
NuGet\Install-Package MindFile -Version 1.0.0
<PackageReference Include="MindFile" Version="1.0.0" />
paket add MindFile --version 1.0.0
#r "nuget: MindFile, 1.0.0"
// Install MindFile as a Cake Addin #addin nuget:?package=MindFile&version=1.0.0 // Install MindFile as a Cake Tool #tool nuget:?package=MindFile&version=1.0.0
MindFile
IMindFileProcessor
arayüzü, dosya yükleme, taşıma, yeniden adlandırma ve doğrulama gibi dosya işlemlerini gerçekleştiren metotlar sunar. Aşağıda mevcut olan metotların açıklamaları yer almaktadır.
Metotlar
1. UploadFileAsync(IFormFile formFile, string DestinationPath)
Bir dosyayı belirtilen hedef yoluna asenkron olarak yükler.
- Parametreler:
formFile
: Yüklenecek dosya.DestinationPath
: Dosyanın yükleneceği hedef yol.
- Dönüş Değeri: Asenkron işlemi temsil eden bir görev. Görev sonucu dosya adı döner.
2. UploadFileAsync(IFormFile formFile, string DestinationPath, long MaxFileSize)
Bir dosyayı belirtilen hedef yoluna, maksimum dosya boyutu sınırı ile asenkron olarak yükler.
- Parametreler:
formFile
: Yüklenecek dosya.DestinationPath
: Dosyanın yükleneceği hedef yol.MaxFileSize
: Dosyanın maksimum boyutu (bayt cinsinden).
- Dönüş Değeri: Asenkron işlemi temsil eden bir görev. Görev sonucu dosya adı döner.
3. UploadFileAsync(IFormFile formFile, string DestinationPath, string[] allowedFileTypes)
Bir dosyayı belirtilen hedef yoluna, izin verilen dosya türleri ile asenkron olarak yükler.
- Parametreler:
formFile
: Yüklenecek dosya.DestinationPath
: Dosyanın yükleneceği hedef yol.allowedFileTypes
: İzin verilen dosya uzantıları (örneğin, .jpg, .png).
- Dönüş Değeri: Asenkron işlemi temsil eden bir görev. Görev sonucu dosya adı döner.
4. UploadFileAsync(IFormFile formFile, string DestinationPath, long MaxFileSize, string[] allowedFileTypes)
Bir dosyayı belirtilen hedef yoluna, maksimum dosya boyutu sınırı ve izin verilen dosya türleri ile asenkron olarak yükler.
- Parametreler:
formFile
: Yüklenecek dosya.DestinationPath
: Dosyanın yükleneceği hedef yol.MaxFileSize
: Dosyanın maksimum boyutu (bayt cinsinden).allowedFileTypes
: İzin verilen dosya uzantıları (örneğin, .jpg, .png).
- Dönüş Değeri: Asenkron işlemi temsil eden bir görev. Görev sonucu dosya adı döner.
5. DeleteFileAsync(string FilePath)
Belirtilen dosya yolundan bir dosyayı siler.
- Parametreler:
FilePath
: Silinecek dosyanın yolu.
- Dönüş Değeri: Asenkron işlemi temsil eden bir görev. Görev sonucu bir
FileResult
döner ve silme işleminin sonucunu belirtir.
6. MoveFile(string CurrentPath, string DestinationPath, bool createDirectoryIfNotExist)
Bir dosyayı bir yol üzerinden başka bir yola taşır ve eğer hedef klasör mevcut değilse oluşturur.
- Parametreler:
CurrentPath
: Dosyanın mevcut yolu.DestinationPath
: Dosyanın taşınacağı hedef yol.createDirectoryIfNotExist
: Hedef klasör mevcut değilse oluşturulup oluşturulmayacağını belirtir.
- Dönüş Değeri: Bir
FileData<string>
nesnesi döner ve taşıma işleminin sonucunu içerir.
7. RenameFileAsync(string FilePath, string NewName)
Bir dosyanın mevcut yolunda ismini değiştirir.
- Parametreler:
FilePath
: Dosyanın mevcut yolu.NewName
: Dosyaya verilecek yeni ad.
- Dönüş Değeri: Asenkron işlemi temsil eden bir görev. Görev sonucu bir
FileData<string>
nesnesi döner ve yeniden adlandırma işleminin sonucunu içerir.
8. GetFileAsByteAsync(string FilePath)
Bir dosyanın içeriğini bayt dizisi olarak alır.
- Parametreler:
FilePath
: Okunacak dosyanın yolu.
- Dönüş Değeri: Asenkron işlemi temsil eden bir görev. Görev sonucu bir
FileData<byte[]>
nesnesi döner ve dosyanın bayt verisini içerir.
9. GetFormFileAsync(string FilePath)
Bir dosyayı IFormFile
nesnesi olarak alır.
- Parametreler:
FilePath
: Okunacak dosyanın yolu.
- Dönüş Değeri: Asenkron işlemi temsil eden bir görev. Görev sonucu bir
FileData<IFormFile>
nesnesi döner ve dosyayı içerir.
10. ValidateFileExtension(IFormFile formFile, string[] allowedFileTypes)
Bir dosyanın uzantısını, izin verilen dosya türleri ile doğrular.
- Parametreler:
formFile
: Doğrulama yapılacak dosya.allowedFileTypes
: İzin verilen dosya uzantıları (örneğin, .jpg, .png).
- Dönüş Değeri: Dosyanın uzantısının geçerli olup olmadığını belirten bir
FileResult
döner.
11. ValidateFileContentAsync(IFormFile file)
Bir dosyanın içeriğini, tehlikeli veya geçersiz içeriklere karşı asenkron olarak doğrular.
- Parametreler:
file
: Doğrulama yapılacak dosya.
- Dönüş Değeri: Asenkron işlemi temsil eden bir görev. Görev sonucu bir
FileData<string>
nesnesi döner ve doğrulama sonucunu içerir.
Bağımlılıklar
- IFormFile: Dosya işlemleri için kullanılan ASP.NET Core arayüzü.
- FileResult: Dosya işlemlerinin sonucunu temsil eden sınıf.
- FileData<T>: Dosya işlem sonuçlarını tutan sınıf.
Kullanım
IMindFileProcessor
arayüzü, dosya yönetimi için asenkron işlemler sağlar. Yükleme, taşıma, silme ve doğrulama işlemlerini kolayca yönetebilirsiniz. Bu arayüz, dosya güvenliği ve doğrulama işlemleri için çeşitli ek özellikler de sunar.
Örnek Kullanım
public class ExampleController : ControllerBase
{
private readonly IMindFileProcessor _fileProcessor;
private readonly IWebHostEnvironment _hostingEnvironment;
public ExampleController(IMindFileProcessor fileProcessor, IWebHostEnvironment hostingEnvironment)
{
_fileProcessor = fileProcessor;
_hostingEnvironment = hostingEnvironment;
}
[HttpPost("upload")]
public async Task<IActionResult> UploadFile(IFormFile formFile)
{
string fileName = await _fileProcessor.UploadFileAsync(formFile, _hostingEnvironment.WebRootPath);
return Ok(fileName);
}
}
Dependency Injection
builder.Services.AddMindFile();
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net9.0 is compatible. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. |
-
net9.0
- Microsoft.AspNetCore.Http (>= 2.3.0)
- Microsoft.AspNetCore.Http.Features (>= 5.0.17)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last updated |
---|---|---|
1.0.0 | 5 | 1/24/2025 |