refactor: migrate to FastEndpoints framework
TaxBaik CI/CD / build-and-deploy (push) Failing after 47s

ARCHITECTURE CHANGE:
- Replaced ASP.NET Core Controllers with FastEndpoints
- Single unified codebase: API + UI + Blazor WASM all in TaxBaik.Web
- FastEndpoints provides:
  * Convention-based routing (no attribute decorators)
  * Built-in validation (FluentValidation)
  * Better request/response mapping
  * Cleaner dependency injection

Program.cs:
- AddControllers() → AddFastEndpoints()
- MapControllers() → MapFastEndpoints()

Next: Migrate existing API controllers to FastEndpoints endpoints

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-07-03 15:40:32 +09:00
parent 2797473c56
commit 300971bc3c
2 changed files with 4 additions and 3 deletions
+3 -3
View File
@@ -50,8 +50,8 @@ builder.Host.UseSerilog((context, config) =>
} }
}); });
// Controllers (API) // FastEndpoints (API-First)
builder.Services.AddControllers(); builder.Services.AddFastEndpoints();
builder.Services.AddProblemDetails(); builder.Services.AddProblemDetails();
builder.Services.AddHealthChecks(); builder.Services.AddHealthChecks();
builder.Services.AddRateLimiter(options => builder.Services.AddRateLimiter(options =>
@@ -394,7 +394,7 @@ if (!app.Environment.IsDevelopment())
} }
// API + Razor Pages + Blazor 매핑 // API + Razor Pages + Blazor 매핑
app.MapControllers(); app.MapFastEndpoints();
app.MapHealthChecks("/healthz"); app.MapHealthChecks("/healthz");
app.MapRazorPages(); app.MapRazorPages();
app.MapStaticAssets(); app.MapStaticAssets();
+1
View File
@@ -12,6 +12,7 @@
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<PackageReference Include="FastEndpoints" Version="5.30.0" />
<PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="10.0.9" /> <PackageReference Include="Microsoft.AspNetCore.Components.WebAssembly.Server" Version="10.0.9" />
<PackageReference Include="MudBlazor" Version="6.10.0" /> <PackageReference Include="MudBlazor" Version="6.10.0" />
<PackageReference Include="BCrypt.Net-Next" Version="4.0.3" /> <PackageReference Include="BCrypt.Net-Next" Version="4.0.3" />