LazyCacheHelpers 1.3.1

There is a newer version of this package available.
See the version list below for details.
dotnet add package LazyCacheHelpers --version 1.3.1                
NuGet\Install-Package LazyCacheHelpers -Version 1.3.1                
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="LazyCacheHelpers" Version="1.3.1" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add LazyCacheHelpers --version 1.3.1                
#r "nuget: LazyCacheHelpers, 1.3.1"                
#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 LazyCacheHelpers as a Cake Addin
#addin nuget:?package=LazyCacheHelpers&version=1.3.1

// Install LazyCacheHelpers as a Cake Tool
#tool nuget:?package=LazyCacheHelpers&version=1.3.1                

Library for leveraging the power of the Lazy class to enable high performance caching at all layers of an application. It provides support for both Sync and Async Lazy caching operations in an extremely lightweight and simple footprint -- with passive cache coding style using Lambdas to maximize server utilization and performance with a blocking, or self-populating, cache implementation!

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  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. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages (2)

Showing the top 2 NuGet packages that depend on LazyCacheHelpers:

Package Downloads
SqlBulkHelpers

A library for easy, efficient and high performance bulk insert and update of data, into a Sql Database, from .Net applications. By leveraging the power of the SqlBulkCopy classes with added support for Identity primary key table columns this library provides a greatly simplified interface to process Identity based Entities with Bulk Performance with the wide compatibility of .NetStandard 2.0.

LazyCacheHelpers.ConfigurationManager

Extension package for the LazyCacheHelpers Library to provide easy to use helpers to read cache configuration values from App.Config or Web.config files using System.Configuration; making things like enabling/disabling and dynamic fallback from specialized to generalized config values much easier to implement.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last updated
1.3.2 34,470 11/16/2022
1.3.1 2,894 10/11/2022
1.3.0 402 10/11/2022
1.2.0 2,720 9/30/2022
1.1.0 3,544 7/29/2022
1.0.4 16,662 5/17/2022
1.0.3 7,088 8/1/2021
1.0.2 755 1/23/2021
1.0.0.1 524 10/22/2019

- v1.3.1 Added support for inheriting from the new ILazySelfExpiringCacheResult<TValue>, with protected property setters, as well as small param naming improvements.
- Add support for Self Expiring cache results that return the CachePolicy/Cache TTL/etc. along with the Cache Result; ideal when the cache TTL is not
known ahead of time in use cases such as external API results that also return a lifespan for the data such as Auth API Tokens, etc.
- This should not be a breaking change as this support was now added via net new interfaces ILazyCacheHandlerSelfExpiring and ILazySelfExpiringCacheResult.
- Added support to now easily inject/bootstrap the DefaultLazyCache static implementation with your own ILazyCacheRepository, eliminating the need to have your own
Static implementaiton if you don't want to duplicate it; though encapsulating in your own static facade is usually a good idea.
- Implemented IDisposable support for existing LazyCacheHandler and LazyCacheRepositories to support better cleanup of resources

Prior Release Notes:
- Add support for Clearing the Lazy Static In-memory Cache (wrapper for Lazy caching pattern for sync or async results based on the underlying ConcurrentDictionary<Lazy<T>>).
- Add support for Clearing the Cache and for getting the Cache Count; implemented for DefaultLazyCache as well as the Static In-memory caches.
- Restored LazyCacheConfig class capabilities for reading values dynamically from Configuration.
- Added support for Bootstrapping a Configuration Reader Func (Delegate) so that all reading of config values from the keys is completely dynamic now.
- Added new LazyStaticInMemoryCache<> class to make it significantly easier to implement in-memory caching of data that rarely or never changes with the lazy loading, blocking cache, pattern; great for minimizing the runtime impact of expensive Reflection or I/O Async logic for data that rarely or never changes.
- Refactored as .Net Standard v2.0 compatible Library for greater compatibility
- Removed dependency on System.ConfigurationManagement; breaking change if a couple helper overloads were used. The helpers can be restored by adding LazyCacheHelpers.ConfigurationManagement extension package and renaming all calls to LazyCachePolicy static helper to now use LazyCachePolicyFromConfig static helper.
- Now fully supported as a .Net Standard 2.0 library (sans Configuration reader helpers) whereby you can specify the timespan directly for Cache Policy initialization.
- Initial nuget release for .Net Framework.