diff options
| author | Jake Mannens <jake@asger.xyz> | 2023-08-15 15:49:14 +1000 |
|---|---|---|
| committer | Jake Mannens <jake@asger.xyz> | 2025-08-18 10:59:32 +1000 |
| commit | 38c60cee378b9c2ad42fc9dc79bc492b919a68f5 (patch) | |
| tree | 6b62f84aab4b7866432e5da8ae8fcb889795d58b /Program.cs | |
| parent | 07a4c7ead01514bd3f304f00abc38140a1d73634 (diff) | |
Convert Razor pages to Blazor
Diffstat (limited to 'Program.cs')
| -rw-r--r-- | Program.cs | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/Program.cs b/Program.cs new file mode 100644 index 0000000..dfc635c --- /dev/null +++ b/Program.cs @@ -0,0 +1,39 @@ +using Microsoft.EntityFrameworkCore; +using System.Text.Json.Serialization; +using HyperBooru.Services; + +namespace HyperBooru; + +public class Program { + public static void Main(string[] args) { + var builder = WebApplication.CreateBuilder(args); + builder.Services.AddControllers().AddJsonOptions(o => { + var converter = new JsonStringEnumConverter(); + o.JsonSerializerOptions.Converters.Add(converter); + }); + builder.Services.AddRazorPages(); + builder.Services.AddServerSideBlazor(); + + // Add out custom services + builder.Services.AddSingleton<IConfigService, ConfigService>(); + builder.Services.AddDbContextFactory<HBContext>(); + builder.Services.AddScoped<ITagService, TagService>(); + + var app = builder.Build(); + + // Ensure database is created and it's schema is up to date + using var scope = app.Services.CreateScope(); + using var db = scope.ServiceProvider.GetRequiredService<HBContext>(); + db.Database.Migrate(); + + app.UseHsts(); + app.UseHttpsRedirection(); + app.UseStaticFiles(); + app.UseRouting(); + app.MapBlazorHub(); + app.MapControllers(); + app.MapFallbackToPage("/_Host"); + + app.Run(); + } +} |
