MindFile 1.0.0

dotnet add package MindFile --version 1.0.0                
NuGet\Install-Package MindFile -Version 1.0.0                
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="MindFile" Version="1.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add MindFile --version 1.0.0                
#r "nuget: MindFile, 1.0.0"                
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
// 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 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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

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