Flaminco.Identifier
1.0.0
See the version list below for details.
dotnet add package Flaminco.Identifier --version 1.0.0
NuGet\Install-Package Flaminco.Identifier -Version 1.0.0
<PackageReference Include="Flaminco.Identifier" Version="1.0.0" />
paket add Flaminco.Identifier --version 1.0.0
#r "nuget: Flaminco.Identifier, 1.0.0"
// Install Flaminco.Identifier as a Cake Addin #addin nuget:?package=Flaminco.Identifier&version=1.0.0 // Install Flaminco.Identifier as a Cake Tool #tool nuget:?package=Flaminco.Identifier&version=1.0.0
Flaminco.Identifier
The Flaminco.Identifier
library offers a robust, type-safe mechanism for handling entity identifiers in .NET applications, using GUIDs to ensure uniqueness while preventing the accidental interchange of identifiers between different entity types.
Features
- Type Safety: Guarantees that identifiers are specific to their entity types, eliminating the risk of mixing up identifiers between entities.
- GUID Utilization: Leverages globally unique identifiers (GUIDs) to ensure the uniqueness of each identifier.
- Ease of Use: Provides a straightforward approach to generating and managing entity-specific identifiers with support for implicit conversion to and from
Guid
, simplifying integration with existing systems.
Getting Started
Installation
To install the Flaminco.Identifier
package, use the following command in the .NET CLI:
dotnet add package Flaminco.Identifier
Usage
Define an Identifier for Your Entity
public class User
{
public Identifier<User> Id { get; set; }
}
Best Practices
Utilize Identifier<TEntity> wherever you need a unique identifier for an entity, to leverage type safety and avoid the pitfalls of using raw GUIDs or other primitive types. When designing APIs or services, prefer accepting and returning Identifier<TEntity> to enforce type safety across your application's boundaries.
Contribution
Contributions are welcome! If you have suggestions, bug reports, or contributions, please submit them as issues or pull requests on our GitHub repository.
License
This project is licensed under the MIT License.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | 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. |
-
net8.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.