checkpoint

This commit is contained in:
2025-11-03 11:19:50 -05:00
parent 5ba351de9c
commit ed01f58a0c
6 changed files with 767 additions and 24 deletions
+2 -13
View File
@@ -19,44 +19,33 @@ builder.WebHost.ConfigureKestrel(options =>
options.ListenLocalhost(6001, o => o.Protocols = HttpProtocols.Http1);
});
// Register command handlers with CQRS and FluentValidation
builder.Services.AddCommand<AddUserCommand, int, AddUserCommandHandler, AddUserCommandValidator>();
builder.Services.AddCommand<RemoveUserCommand, RemoveUserCommandHandler>();
// Register query handlers with CQRS
builder.Services.AddQuery<FetchUserQuery, User, FetchUserQueryHandler>();
// Register PoweredSoft.DynamicQuery services
builder.Services.AddTransient<PoweredSoft.Data.Core.IAsyncQueryableService, SimpleAsyncQueryableService>();
builder.Services.AddTransient<PoweredSoft.DynamicQuery.Core.IQueryHandlerAsync, PoweredSoft.DynamicQuery.QueryHandlerAsync>();
// Register dynamic query for User entity with queryable provider
builder.Services.AddDynamicQueryWithProvider<User, UserQueryableProvider>();
// Register discovery services for MinimalApi
builder.Services.AddDefaultCommandDiscovery();
builder.Services.AddDefaultQueryDiscovery();
// Auto-generated: Register gRPC services for both commands and queries (includes reflection)
builder.Services.AddGrpcCommandsAndQueries();
// Add Swagger/OpenAPI support
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen();
var app = builder.Build();
// Auto-generated: Map gRPC endpoints for both commands and queries
builder.Services.AddGrpcCommandsAndQueries();
app.MapGrpcCommandsAndQueries();
// Map gRPC reflection service
app.MapGrpcReflectionService();
// Enable Swagger middleware
app.UseSwagger();
app.UseSwaggerUI();
// Map MinimalApi endpoints for commands and queries
app.MapSvrntyCommands();
app.MapSvrntyQueries();
app.MapSvrntyDynamicQueries();