A general purpose toolbox of helpful .NET extensions methods (and some types).
Helpful extension methods on Dictionary, DateTime / DateTimeOffset, on strings and StringBuilder,
on general collections, and so forth.
Install-Package DotNetXtensions -Version 4.0.0
dotnet add package DotNetXtensions --version 4.0.0
<PackageReference Include="DotNetXtensions" Version="4.0.0" />
paket add DotNetXtensions --version 4.0.0
#r "nuget: DotNetXtensions, 4.0.0"
- No dependencies.
NuGet packages (10)
Showing the top 5 NuGet packages that depend on DotNetXtensions:
A number of helpful collections, such as a DropOffStack, a PriorityQueue, some binary-search types that allow chop-searching on virtual collections (not just on an array), and a grab-bag of additional types such as: A ConcurrentTasksRunner, a GuidTimeStamp, a Colour type, and so forth.
MIME type helper for getting some common ("basic") MIME types, and the ability to know their associated file extensions, or to find a MIME type(s) from an extension, and so forth. This is NOT intended to be exhaustive (as having an exhaustive enum for mimetypes would not be encouraged), but to represent most of the commonly encountered file / MIME types one encounters on the web.
Provides minor set of xunit helpers
Some cryptography and compression related helper extension methods and types. Extension methods that make it easy to get SHA hashes as well as AES-256 encryption on strings and byte-arrays. XZip which makes it easy to convert byte arrays and Streams to and from a ZipArchive (a zip file). RandomStringGenerator and RandomNumbers types, a PasswordStrengthEvaluator, and a CryptoRandom type (which inherits Random), which allows semi-crytographically secure random generation, based on RNGCryptoServiceProvider, but which uses a caching system that greatly expediates performance.
Some Newtonsoft.JSON helper extension methods and types (e.g. JsonConverters). Most important is the extension method on objects exposting a useful `ToJson` extension method, which allows one to serialize any object to Json with a single call, while being able to specify whether to indent, to camel-case property names, to serialize enums as strings, and etc. On the other end exposes a DeserializeJson extension method on strings and byte arrays. Nothing earth-shattering here, but helps those cases where you want quick and no-nonsense JSON serialization / deserialization.
This package is not used by any popular GitHub repositories.