GrumpTech.EntityWebApi.Controllers
0.1.2
Prefix Reserved
dotnet add package GrumpTech.EntityWebApi.Controllers --version 0.1.2
NuGet\Install-Package GrumpTech.EntityWebApi.Controllers -Version 0.1.2
<PackageReference Include="GrumpTech.EntityWebApi.Controllers" Version="0.1.2" />
<PackageVersion Include="GrumpTech.EntityWebApi.Controllers" Version="0.1.2" />
<PackageReference Include="GrumpTech.EntityWebApi.Controllers" />
paket add GrumpTech.EntityWebApi.Controllers --version 0.1.2
#r "nuget: GrumpTech.EntityWebApi.Controllers, 0.1.2"
#:package GrumpTech.EntityWebApi.Controllers@0.1.2
#addin nuget:?package=GrumpTech.EntityWebApi.Controllers&version=0.1.2
#tool nuget:?package=GrumpTech.EntityWebApi.Controllers&version=0.1.2
EntityWebApi.Controllers
Part of EntityWebApi.
EntityWebApi.Controllers supports registering generic ASP.NET Core controllers by resolving their generic type arguments at application startup. This makes it possible to expose a complete REST API for your Entity Framework Core entities using a single generic controller implementation.
Getting Started
Register services
Register the services of EntityWebApi.Controllers.
services.AddEntityWebApi();
Configure controllers
Configure how generic type arguments are resolved and register controllers for your entity types.
app.UseEntityWebApi(options => options
.SetDefaultArgumentResolver((argumentName, entityType) =>
typeStore.GetRequired($"{entityType.Name}{argumentName[1..]}"))
.AddArgumentResolver("TDbContext", _ => typeof(DataContext))
.AddArgumentResolver("TEntity", entityType => entityType)
.AddControllers(typeof(RestController<,,,,,>), entityTypes)
);
This configuration:
- Configures a default resolver for generic type arguments that do not have an explicit resolver.
- Registers a resolver for
TDbContextthat always resolves toDataContext. - Registers a resolver for
TEntitythat resolves to the current entity type. - Registers a closed generic controller for each type in
entityTypes.
Registering controllers
Use AddControllers to register a controller for multiple entity types.
options.AddControllers(typeof(RestController<,,,,,>), entityTypes);
Or use AddController to register a controller for a single entity type.
options.AddController(typeof(RestController<,,,,,>), typeof(Customer));
| 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
- GrumpTech.EntityWebApi.Core (>= 0.1.2)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.