Asre.SlimDto 1.0.0

dotnet add package Asre.SlimDto --version 1.0.0                
NuGet\Install-Package Asre.SlimDto -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="Asre.SlimDto" Version="1.0.0" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add Asre.SlimDto --version 1.0.0                
#r "nuget: Asre.SlimDto, 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 Asre.SlimDto as a Cake Addin
#addin nuget:?package=Asre.SlimDto&version=1.0.0

// Install Asre.SlimDto as a Cake Tool
#tool nuget:?package=Asre.SlimDto&version=1.0.0                

Asre.SlimDto

Asre.SlimDto is a flexible and performant C# library designed for dynamic filtering of Data Transfer Objects (DTOs) based on custom attributes. It leverages caching and asynchronous operations to optimize performance, especially for large objects and collections. The library allows you to define which properties of your entities should be exposed using the [SlimCandidate] attribute, eliminating the need for manual creation of DTO classes.

Features

  • Dynamic DTO Filtering: Filter out properties of an entity marked with the [SlimCandidate] attribute.
  • Supports Collections: Automatically handles lists, arrays, and other enumerable collections of entities.
  • Caching: Caches property metadata (reflection results) to improve performance on subsequent calls.
  • Asynchronous: Methods are fully asynchronous, making the library suitable for high-performance and scalable applications.
  • Thread-Safe: Designed to handle concurrent requests in multi-threaded environments like ASP.NET Core.
  • Singleton in DI: The FilterService should be registered as a singleton in the Dependency Injection container.
Product Compatible and additional computed target framework versions.
.NET net6.0 is compatible.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 was computed.  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. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • net6.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
1.0.0 123 9/7/2024