FilePipelineNET 2.1013.2233

dotnet add package FilePipelineNET --version 2.1013.2233
                    
NuGet\Install-Package FilePipelineNET -Version 2.1013.2233
                    
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="FilePipelineNET" Version="2.1013.2233" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="FilePipelineNET" Version="2.1013.2233" />
                    
Directory.Packages.props
<PackageReference Include="FilePipelineNET" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add FilePipelineNET --version 2.1013.2233
                    
#r "nuget: FilePipelineNET, 2.1013.2233"
                    
#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.
#:package FilePipelineNET@2.1013.2233
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=FilePipelineNET&version=2.1013.2233
                    
Install as a Cake Addin
#tool nuget:?package=FilePipelineNET&version=2.1013.2233
                    
Install as a Cake Tool

Introducing FilePipelineNET

We present the FilePipelineNET Library, a robust and efficient solution designed to streamline the handling and processing of incoming files. This library automatically monitors a designated folder (referred to as inletDirectoryFullName) for new file arrivals, processes their contents, and then archives them in an organized manner.

Key Features

  • Automatic File Monitoring:
    The library continuously monitors the specified inletDirectoryFullName for incoming files. When a file is dropped into this directory, it is automatically detected and queued for processing.

  • Customizable Processing with fileDelegate:
    Once a file is detected, it is processed using custom logic defined through the fileDelegate delegate. This delegate allows you to inject your specific processing logic, whether it's parsing data, transforming formats, validating contents, or performing any other custom operation you need.

  • Organized Archiving:
    After processing, the library moves each file to a subfolder within the original directory, naming it with a timestamp to reflect the date of processing. This ensures that processed files are kept organized and easily traceable.

How It Works

  1. File Arrival: A file is placed into the inletDirectoryFullName.
  2. Processing: The library triggers the fileDelegate delegate for each file, executing the custom processing logic you've defined.
  3. Archiving: Once processed, the file is archived into a new subfolder within the original directory. The subfolder is automatically named with the current date (e.g., Processed_2025-10-12).

Use Cases

This library is ideal for scenarios involving automated workflows, data ingestion pipelines, or any use case where incoming files need to be processed and stored in an organized manner.

With the File Processor .NET Library, you can automate repetitive tasks, reduce manual handling, and keep your file processing efficient and organized, all while maintaining full control over how each file is processed.

Example Code

Below is a simple example of how to use the library, including setting up the fileDelegate for custom processing:

namespace Example
{
    internal class Program
    {
        static void Main(string[] args)
        {
            using (FilePipeline filePipeline = new FilePipeline(
                    instanceName: "MyFilePipeline",
                    inletDirectoryFullName: @"C:\incoming_files",
                    outletDirectoryName: "history_sub_folder",
                    fileSubfix: "*.json",
                    retentionDays: 7,
                    adminDelegate: (httpContext) => { return false; },
                    traceDelegate: (instanceName, logLevel, message) => { Console.WriteLine(message); },
                    fileDelegate: (instanceName, file) =>
                    {
                        string json = System.Text.Encoding.Default.GetString(file.Contents);
                        /// TODO: your json processing logic here.
                        file.ArchiveTag = "DONE";
                    }
                    ))
                {
                    Console.WriteLine("Press ENTER to stop ...")
                    Console.ReadLine();
                }
        }
    }
}


               
Product Compatible and additional computed target framework versions.
.NET net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  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.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net8.0

    • No dependencies.

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
2.1013.2233 235 10/13/2025
2.923.1835 323 9/23/2025 2.923.1835 is deprecated because it has critical bugs.

Bug fixes and performance improvements