KamiSama.Repositories.Core
10.0.11.4
See the version list below for details.
dotnet add package KamiSama.Repositories.Core --version 10.0.11.4
NuGet\Install-Package KamiSama.Repositories.Core -Version 10.0.11.4
<PackageReference Include="KamiSama.Repositories.Core" Version="10.0.11.4" />
<PackageVersion Include="KamiSama.Repositories.Core" Version="10.0.11.4" />
<PackageReference Include="KamiSama.Repositories.Core" />
paket add KamiSama.Repositories.Core --version 10.0.11.4
#r "nuget: KamiSama.Repositories.Core, 10.0.11.4"
#:package KamiSama.Repositories.Core@10.0.11.4
#addin nuget:?package=KamiSama.Repositories.Core&version=10.0.11.4
#tool nuget:?package=KamiSama.Repositories.Core&version=10.0.11.4
KamiSama.Repositories.Core
Version: 10.0.0
Description
Repository contracts, an in-memory implementation, connection-string options, and database initialization abstractions. Use it to keep callers independent of persistence or to hold transient entities in tests and lightweight processes.
How to use
dotnet add package KamiSama.Repositories.Core --version 10.0.0
Use the contracts to keep callers independent of persistence, or use InMemoryRepository<TEntity> for transient data and tests. Its update methods are no-ops, duplicate handling follows HashSet<TEntity> equality, and live queries must not be enumerated concurrently with mutations:
using KamiSama.Repositories;
using var repository = new InMemoryRepository<User>(users, UserIdComparer.Instance);
User? admin = repository.FirstOrDefault(user => user.IsAdmin);
List<User> allUsers = repository.GetAll().ToList();
The repository interfaces do not define durability, transactions, duplicate behavior, cancellation guarantees, or whether returned queries are snapshots. IAsyncQueryableRepository<TEntity>.Where is synchronous despite the interface name. ConnectionStringOption and DataInitializationOptions are configuration data only; an initializer or provider implementation decides how their values are applied.
Namespaces
- KamiSama.Repositories (7 types)
- KamiSama.Repositories.Initialization (2 types)
Types
- KamiSama.Repositories.ConnectionStringOption - Contains the provider identifier and connection string bound from configuration. Provider packages decide which identifiers they accept and how the connection string is used.
- KamiSama.Repositories.IAsyncQueryableRepository<TEntity> - Combines asynchronous repository operations with a synchronous
Wheremethod returningIQueryable<TEntity>. The interface name does not make query creation or enumeration asynchronous. - KamiSama.Repositories.IAsyncRepository<_EntityType> - Adds asynchronous mutation and lookup methods to
IRepository<TEntity>. Implementations determine whether work is truly asynchronous and how cancellation, failures, and persistence are handled. - KamiSama.Repositories.InMemoryRepository<TEntity> - Stores entities in an in-process
HashSet<TEntity>for tests and transient scenarios. Add and delete are serialized per instance, update is a no-op, duplicate semantics follow the comparer, and reads or live queries are not synchronized with mutations. - KamiSama.Repositories.IQueryableRepository<TEntity> - Adds predicate-based query access to the synchronous repository contract. The implementation decides whether the returned
IQueryable<TEntity>is translated, deferred, live, or an in-memory snapshot. - KamiSama.Repositories.IRepository<TEntity> - Defines synchronous add, update, delete, and first-match lookup operations. Implementations determine persistence, transaction, duplicate, and missing-entity behavior.
- KamiSama.Repositories.RepositoriesExtensions - Provides first-match and all-entity convenience queries for
IQueryableRepository<TEntity>. Both methods delegate to the repository'sWhereimplementation and preserve its query and concurrency semantics. - KamiSama.Repositories.Initialization.DataInitializationOptions - Selects whether a database initializer should migrate, create required application data, or create test data. The
IDatabaseInitializer<TDbContext>implementation defines the actual work and ordering. - KamiSama.Repositories.Initialization.IDatabaseInitializer<TDbContext> - Defines migration and seed-data initialization for one database context type. Implementations interpret
DataInitializationOptionsand own ordering, idempotency, persistence, and failure behavior.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | 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. |
-
net10.0
- Microsoft.Extensions.Configuration.Abstractions (>= 10.0.11)
NuGet packages (4)
Showing the top 4 NuGet packages that depend on KamiSama.Repositories.Core:
| Package | Downloads |
|---|---|
|
KamiSama.Repositories.EntityFrameworkCore
Entity Framework Core repositories, paging, database initialization, and multi-provider DbContext registration. |
|
|
KamiSama.Repositories.EntityFramework
Entity Framework 6 repositories with immediate persistence and ordered-query paging. |
|
|
KamiSama.Repositories.Json
Lazy-loading JSON file repository with synchronous and asynchronous query and mutation APIs. |
|
|
KamiSama.Repositories.Xml
Read-oriented XML directory repository implementations with known serializer and mutation limitations. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.0.11.9 | 391 | 8/24/2026 |
| 10.0.11.8 | 465 | 8/22/2026 |
| 10.0.11.7 | 471 | 8/21/2026 |
| 10.0.11.6 | 440 | 8/19/2026 |
| 10.0.11.5 | 399 | 8/18/2026 |
| 10.0.11.4 | 396 | 8/18/2026 |
| 10.0.11.3 | 376 | 8/18/2026 |
| 10.0.11.2 | 358 | 8/18/2026 |
| 10.0.11.1 | 283 | 8/15/2026 |
| 10.0.11 | 232 | 8/11/2026 |
| 10.0.10.2 | 260 | 8/4/2026 |
| 10.0.10.1 | 160 | 7/31/2026 |
| 10.0.10 | 321 | 7/30/2026 |
| 10.0.9 | 250 | 6/20/2026 |
| 10.0.7 | 880 | 5/1/2026 |
| 10.0.6 | 376 | 4/16/2026 |
| 10.0.1 | 464 | 11/26/2025 |
| 10.0.0 | 307 | 11/22/2025 |
| 3.1.6 | 332 | 11/7/2025 |
| 3.1.5 | 320 | 11/6/2025 |