netproxy / src / Netproxy.Web / Program.cs
Code · 46 lines · 1034 bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
using NetproxySolution.Web.ErrorHandling;
using NetproxySolution.Web.Extensions;
using VanDerHeijden.JsonBodyProvider;

var builder = WebApplication.CreateBuilder(new WebApplicationOptions
{
	ContentRootPath = AppContext.BaseDirectory
});

var services = builder.Services;

services.AddSingleton(provider => new ErrorService());

services.AddControllersWithViews();
services.AddRazorPages(o => o.RootDirectory = "/wwwroot");

services.AddMvcCore();
services.AddJsonBodyProvider();
services.RegisterServices();
services.AddHttpContextAccessor();

services.AddDistributedMemoryCache();
services.AddSession();

var app = builder.Build();

app.UseExceptionHandler("/error/internal");
app.UseStatusCodePagesWithReExecute("/error/internal/{0}");

//Uploads go via c:\windows\temp
app.Use(next => context =>
{
	context.Request.EnableBuffering(Int32.MaxValue);
	return next(context);
});


app.UseDefaultFiles();
app.UseStaticFiles();
app.UseSession();

app.MapControllers();
app.MapDefaultControllerRoute();
app.MapRazorPages();
app.Run();