PRF.Utils.CoreComponents 3.0.0

dotnet add package PRF.Utils.CoreComponents --version 3.0.0
                    
NuGet\Install-Package PRF.Utils.CoreComponents -Version 3.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="PRF.Utils.CoreComponents" Version="3.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="PRF.Utils.CoreComponents" Version="3.0.0" />
                    
Directory.Packages.props
<PackageReference Include="PRF.Utils.CoreComponents" />
                    
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 PRF.Utils.CoreComponents --version 3.0.0
                    
#r "nuget: PRF.Utils.CoreComponents, 3.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.
#:package PRF.Utils.CoreComponents@3.0.0
                    
#: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=PRF.Utils.CoreComponents&version=3.0.0
                    
Install as a Cake Addin
#tool nuget:?package=PRF.Utils.CoreComponents&version=3.0.0
                    
Install as a Cake Tool

CoreComponents details

Version 3.0.0

CoreComponents now targets .NET 10. Consumers must target .NET 10 or later; applications using .NET Framework or .NET 8/9 must remain on the 2.x package. The other PRF packages keep their existing target frameworks.

The bitmap extensions have moved to the separate, non-packable PRF.Utils.Drawing project in this repository. CoreComponents no longer depends on System.Drawing.Common. The drawing extensions remain Windows-only and are not distributed as a NuGet package.

This module is available as a Nuget package: PRF.Utils.CoreComponents

Its mains purpose is to provide extensions methods around DirectoryInfo, FileInfo, some basics types and JSON and XML manipulation and some helpers for async dispatch

Batch processing and TimeProvider

BatchProcessingQueue<T> accepts a TimeProvider as its fourth constructor argument. The existing three-argument constructor uses TimeProvider.System.

The timer stays inactive while the queue is empty. The first item starts a one-shot timeout; subsequent items do not postpone it. Reaching the page size or calling ForceFlush() flushes the page and cancels its timeout. The next page starts a new timeout with its first item. Timeout.InfiniteTimeSpan disables timeout flushing.

The page callback runs synchronously outside the queue lock. Dispatch work from it when asynchronous processing is needed. Callbacks can overlap when producers or timer callbacks run concurrently; consumers needing serial processing must provide it. Disposing the queue cancels the timer without flushing pending items. Call ForceFlush() before disposal when those items must be processed.

Tests can supply FakeTimeProvider from Microsoft.Extensions.TimeProvider.Testing and advance time explicitly, without real delays.

Product Compatible and additional computed target framework versions.
.NET net10.0 is compatible.  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.
  • net10.0

    • No dependencies.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on PRF.Utils.CoreComponents:

Package Downloads
PRF.Utils.WPF

Provide basic classes for WPF application as well as built-in converters, validations rules, tree helpers, etc.

PRF.WPFCore

Provide basic classes for WPF application as well as built-in converters, validations rules, tree helpers, etc. (.NET Core version)

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
3.0.0 1,547 10/1/2026
2.9.0 4,786 5/12/2025
2.8.0 344 4/29/2025
2.7.3 846 2/17/2025
2.7.2 341 2/17/2025
2.7.1 314 2/17/2025
2.7.0 1,845 11/20/2024
2.6.2 486 8/1/2024
2.6.1 412 6/17/2024
2.6.0 306 6/16/2024
2.5.2 387 3/6/2024
2.5.1 401 3/4/2024
2.5.0 676 10/19/2023
2.4.0 618 10/18/2023
2.3.1 840 6/13/2023
2.3.0 767 6/13/2023
2.2.3 890 4/12/2023
2.2.2 1,572 9/29/2022
2.2.1 2,363 4/3/2022
2.2.0 1,307 2/19/2022
Loading failed