using Autofac;
|
using Autofac.Extensions.DependencyInjection;
|
using DocumentFile.Service;
|
using Microsoft.AspNetCore.Http.Features;
|
|
var builder = WebApplication.CreateBuilder(args);
|
|
// Add services to the container.
|
|
builder.Services.AddControllers();
|
// Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle
|
builder.Services.AddEndpointsApiExplorer();
|
builder.Services.AddSwaggerGen();
|
|
builder.WebHost.UseKestrel(options =>
|
{
|
//options.Limits.MaxRequestLineSize = int.MaxValue;//HTTP ÇëÇóÐеÄ×î´óÔÊÐí´óС¡£ ĬÈÏΪ 8kb
|
//options.Limits.MaxRequestBufferSize = int.MaxValue;//ÇëÇ󻺳åÇøµÄ×î´ó´óС¡£ ĬÈÏΪ 1M
|
//ÈκÎÇëÇóÕýÎĵÄ×î´óÔÊÐí´óС£¨ÒÔ×Ö½ÚΪµ¥Î»£©,ĬÈÏ 30,000,000 ×Ö½Ú£¬´óԼΪ 28.6MB
|
options.Limits.MaxRequestBodySize = 300 * 1024 * 1024; //ÏÞÖÆÇëÇ󳤶È
|
});
|
builder.Services.Configure<FormOptions>(options =>
|
{
|
//ĬÈÏÉÏ´«´óСÏÞÖÆ
|
options.MultipartBodyLengthLimit = 300 * 1024 * 1024;
|
options.ValueLengthLimit = 300 * 1024 * 1024;
|
});
|
|
builder.Host.UseServiceProviderFactory(new AutofacServiceProviderFactory());
|
builder.Host.ConfigureContainer<ContainerBuilder>(builder =>
|
{
|
//×¢²áioc
|
builder.RegisterType<UploadService>().As<IUploadService>();
|
});
|
|
var app = builder.Build();
|
|
// Configure the HTTP request pipeline.
|
if (app.Environment.IsDevelopment())
|
{
|
app.UseSwagger();
|
app.UseSwaggerUI();
|
}
|
|
app.UseHttpsRedirection();
|
|
app.UseAuthorization();
|
|
app.MapControllers();
|
|
app.Run();
|