eQuantic.Core
1.8.1
See the version list below for details.
dotnet add package eQuantic.Core --version 1.8.1
NuGet\Install-Package eQuantic.Core -Version 1.8.1
<PackageReference Include="eQuantic.Core" Version="1.8.1" />
<PackageVersion Include="eQuantic.Core" Version="1.8.1" />
<PackageReference Include="eQuantic.Core" />
paket add eQuantic.Core --version 1.8.1
#r "nuget: eQuantic.Core, 1.8.1"
#:package eQuantic.Core@1.8.1
#addin nuget:?package=eQuantic.Core&version=1.8.1
#tool nuget:?package=eQuantic.Core&version=1.8.1
eQuantic Core Library
eQuantic Core is a comprehensive .NET library that provides a rich set of utilities, extensions, and design pattern implementations to enhance your applications. This library serves as the foundation for the entire eQuantic ecosystem.
๐ฆ Packages
| Package | Description | NuGet |
|---|---|---|
eQuantic.Core |
Core utilities, extensions, collections | |
eQuantic.Core.Eventing |
Base eventing abstractions (IEvent, IEventHandler, IEventDispatcher) |
๐ Features
๐ฆ Collections
- PagedList<T>: Generic paged collection implementation
- IPagedEnumerable: Interface for paged enumerations with metadata (PageIndex, PageSize, TotalCount)
๐งฉ Extensions
Comprehensive extension methods for common .NET types:
- StringExtensions: Advanced string manipulation (LeftOf, RightOf, RemoveDiacritics, Slugify, etc.)
- TaskExtensions: Async/await utilities and task management
- TypeExtensions: Reflection helpers and type utilities
- EnumerableExtensions: LINQ extensions and collection utilities
- DateTimeExtensions: Date and time manipulation helpers
- ExceptionExtensions: Exception handling utilities
- GuidExtensions: GUID manipulation helpers
- ListExtensions: List-specific extension methods
- EnumExtensions: Enumeration utilities and helpers
๐ Date & Time Utilities
Advanced date and time manipulation tools:
- TimeTool: Comprehensive time calculations and manipulations
- TimeFormatter: Flexible time formatting utilities
- DateDiff: Date difference calculations
- SystemClock: Clock abstraction for testability
- Time: Advanced time operations
- TimeCompare: Time comparison utilities
๐ Security
- IEncrypting: Encryption interface with encoding capabilities
- Encryptor: Default encryption implementation
๐๏ธ Design Patterns
- IContainer: IoC container interface for dependency injection
- ICaching: Caching interface with generic support
๐ ๏ธ Utilities
- ShortGuid: Base64-encoded GUID implementation for shorter string representations
- RegNumberValidation: Registration number validation utilities
- MethodExtractorVisitor: Expression tree method extraction
๐ท๏ธ Attributes & Constants
- LocalizedDescriptionAttribute: Localized description attribute for enums
- StringConstants: Common string constants
๐ก Media Formatters
- DateTimeConverterISO8601: ISO 8601 DateTime converter
- HttpFile: HTTP file handling utilities
๐ฅ Installation
Install eQuantic.Core via NuGet Package Manager:
dotnet add package eQuantic.Core
Or via Package Manager Console:
Install-Package eQuantic.Core
๐ฏ Usage Examples
Collections - Paged Results
using eQuantic.Core.Collections;
// Create a paged list
var items = new List<string> { "item1", "item2", "item3" };
var pagedList = new PagedList<string>(items, totalCount: 100)
{
PageIndex = 1,
PageSize = 10
};
Console.WriteLine($"Page {pagedList.PageIndex} of {Math.Ceiling((double)pagedList.TotalCount / pagedList.PageSize)}");
String Extensions
using eQuantic.Core.Extensions;
string text = "Hello World";
string left = text.LeftOf(' '); // "Hello"
string right = text.RightOf(' '); // "World"
string withAccents = "Olรก, mรฃo!";
string slugified = withAccents.Slugify(); // "ola-mao"
string dirty = "Remove<script>alert('xss')</script>text";
string clean = dirty.UnHtml(); // "Removetext"
ShortGuid Usage
using eQuantic.Core;
// Generate a new short GUID (22 characters instead of 36)
ShortGuid shortId = ShortGuid.NewGuid();
Console.WriteLine(shortId.ToString()); // e.g., "FEx1sZbaCUifqz7VAp3j_g"
// Convert from regular GUID
Guid regularGuid = Guid.NewGuid();
ShortGuid fromGuid = new ShortGuid(regularGuid);
// Convert back to GUID
Guid converted = fromGuid.ToGuid();
Date & Time Utilities
using eQuantic.Core.Date;
// Advanced date operations
DateTime date = DateTime.Now;
DateTime startOfWeek = TimeTool.GetStartOfWeek(date, DayOfWeek.Monday);
DateTime dateOnly = TimeTool.GetDate(date);
DateTime withNewTime = TimeTool.SetTimeOfDay(date, 14, 30, 0); // 2:30 PM
// Date difference calculations
DateDiff diff = new DateDiff(DateTime.Now.AddDays(-30), DateTime.Now);
Console.WriteLine($"Difference: {diff.Days} days");
Type Extensions & Reflection
using eQuantic.Core.Extensions;
Type stringType = typeof(string);
bool isNullable = stringType.IsNullable(); // false
Type nullableInt = typeof(int?);
bool isNullableInt = nullableInt.IsNullable(); // true
// Get all types implementing an interface
var implementingTypes = typeof(IDisposable).GetImplementingTypes();
Caching Interface
using eQuantic.Core.Cache;
public class MyService
{
private readonly ICaching _cache;
public MyService(ICaching cache)
{
_cache = cache;
}
public async Task<string> GetDataAsync(string key)
{
if (!_cache.IsNull(key))
{
return _cache.Get<string>(key);
}
var data = await FetchDataFromSourceAsync(key);
_cache.Add(data, key, timeout: 60); // Cache for 60 minutes
return data;
}
}
๐ฏ Target Frameworks
- .NET Standard 2.1
- .NET 6.0
- .NET 8.0
- .NET 10.0
๐ค Contributing
We welcome contributions! Please feel free to submit pull requests or open issues to discuss potential improvements.
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Related Packages
eQuantic Core is part of the eQuantic ecosystem. Check out these related packages:
- eQuantic.Core.CQS - CQS/CQRS pattern with Mediator, Sagas, Outbox
- eQuantic.Core.DomainEvents - Domain Events for DDD
- eQuantic.Core.Api - API, Domain, Application layers
- eQuantic.Core.Api.Crud - CRUD operations
๐ Support
For support, please visit our GitHub Issues page.
eQuantic Tech - Building the future, one component at a time.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. 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 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 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. |
| .NET Core | netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.1 is compatible. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.1
- No dependencies.
-
net10.0
- No dependencies.
-
net6.0
- No dependencies.
-
net8.0
- No dependencies.
NuGet packages (11)
Showing the top 5 NuGet packages that depend on eQuantic.Core:
| Package | Downloads |
|---|---|
|
eQuantic.Core.Data
eQuantic Core Data Class Library |
|
|
eQuantic.Core.Data.EntityFramework
Core Data library for Entity Framework |
|
|
eQuantic.Core.Domain
eQuantic Domain Library |
|
|
eQuantic.Core.Api.Crud.Client
eQuantic Api CRUD Client Library |
|
|
eQuantic.Core.Data.EntityFramework.SqlServer
Core Data library for Entity Framework and SQL Server |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.8.4 | 90 | 12/28/2025 |
| 1.8.3 | 89 | 12/28/2025 |
| 1.8.2 | 95 | 12/28/2025 |
| 1.8.1 | 710 | 12/27/2025 |
| 1.8.0 | 3,132 | 6/16/2025 |
| 1.7.1 | 206 | 6/15/2025 |
| 1.7.0 | 20,563 | 10/21/2023 |
| 1.6.0 | 8,761 | 8/27/2022 |
| 1.5.0.4 | 2,332 | 11/26/2020 |
| 1.5.0.3 | 728 | 11/8/2020 |
| 1.5.0.2 | 735 | 11/8/2020 |
| 1.5.0.1 | 2,063 | 6/7/2020 |
| 1.5.0 | 1,473 | 6/6/2020 |
| 1.4.10.4 | 995 | 9/19/2019 |
| 1.4.10.2 | 1,132 | 2/23/2019 |
| 1.4.10 | 7,477 | 1/10/2018 |
| 1.4.9.1 | 925 | 12/12/2018 |
| 1.4.9 | 4,995 | 10/2/2017 |
| 1.4.8 | 1,337 | 8/1/2017 |
| 1.4.7.1 | 2,183 | 7/19/2017 |
| 1.4.7 | 4,630 | 5/17/2017 |
| 1.4.6.3 | 2,506 | 4/20/2017 |
| 1.4.6.2 | 1,314 | 4/20/2017 |
| 1.4.6.1 | 1,308 | 4/19/2017 |
| 1.4.6 | 1,267 | 4/19/2017 |
| 1.4.5 | 4,577 | 1/31/2017 |
| 1.4.4 | 2,559 | 1/31/2017 |
| 1.4.3 | 2,586 | 1/8/2017 |
| 1.4.2 | 2,159 | 1/8/2017 |
| 1.4.1 | 1,393 | 1/4/2017 |
| 1.4.0 | 1,345 | 1/4/2017 |
| 1.3.1 | 1,466 | 1/2/2017 |
| 1.3.0 | 1,319 | 1/2/2017 |
| 1.2.2 | 2,295 | 10/7/2016 |
| 1.2.1.1 | 5,458 | 4/26/2016 |
| 1.2.1 | 3,623 | 4/26/2016 |
| 1.2.0 | 3,399 | 4/26/2016 |
Customed solutions for log, security, dependency injections, ...