25'ten fazla konu seçemezsiniz Konular bir harf veya rakamla başlamalı, kısa çizgiler ('-') içerebilir ve en fazla 35 karakter uzunluğunda olabilir.

2 hafta önce
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. using Api.Start;
  2. using Core.Db;
  3. using Microsoft.AspNetCore.Builder;
  4. using Microsoft.EntityFrameworkCore;
  5. using Microsoft.OpenApi.Models;
  6. using System.Reflection;
  7. using Microsoft.Extensions.DependencyInjection;
  8. using System.Collections.Generic;
  9. using Microsoft.Extensions.FileProviders;
  10. using System.IO;
  11. var builder = WebApplication.CreateBuilder(args);
  12. var Configuration = builder.Configuration;
  13. //MVC:
  14. builder.Services.AddControllersWithViews();
  15. //Swagger:
  16. builder.Services.AddSwaggerGen(c =>
  17. {
  18. c.SwaggerDoc("v1", new OpenApiInfo { Title = "API", Version = "v1" });
  19. c.AddSecurityDefinition("Bearer", new OpenApiSecurityScheme
  20. {
  21. Description = @"JWT Authorization header using the bearer scheme.
  22. Enter 'Bearer' [space] and then your token in the text input below.
  23. Example: 'Bearer 12345abcdef'",
  24. Name = "Authorization",
  25. In = ParameterLocation.Header,
  26. Scheme = "Bearer",
  27. Type = SecuritySchemeType.Http
  28. });
  29. c.AddSecurityRequirement(new OpenApiSecurityRequirement
  30. {{new OpenApiSecurityScheme
  31. {
  32. Reference = new OpenApiReference
  33. {
  34. Type = ReferenceType.SecurityScheme,
  35. Id = "Bearer"
  36. },
  37. Name = "Bearer",
  38. In = ParameterLocation.Header,
  39. }, new List<string>()
  40. }});
  41. }
  42. );
  43. #region Required Services & DI
  44. builder.Services.RegisterDependencies(Configuration);
  45. builder.Services.RegisterAuth(Configuration);
  46. #endregion
  47. builder.Services.AddCors(builder =>
  48. {
  49. builder.AddPolicy("AllowAll", options =>
  50. {
  51. options.AllowAnyHeader()
  52. .AllowAnyOrigin()
  53. .AllowAnyMethod()
  54. .AllowAnyHeader();
  55. });
  56. });
  57. var app = builder.Build();
  58. app.UseHttpsRedirection();
  59. app.UseRouting();
  60. app.UseCors("AllowAll");
  61. app.ConfigureAuthentication();
  62. app.UseSwagger();
  63. app.UseSwaggerUI();
  64. app.MapControllerRoute(
  65. name: "default",
  66. pattern: "{controller=Home}/{action=Index}/{id?}");
  67. app.MapControllerRoute(
  68. name: "pages",
  69. pattern: "{controller=Home}/{pageName}");
  70. app.UseDeveloperExceptionPage();
  71. app.UseStaticFiles();
  72. app.UseStaticFiles(new StaticFileOptions
  73. {
  74. FileProvider = new PhysicalFileProvider(
  75. Path.Combine(builder.Environment.ContentRootPath, "UploadedFiles")),
  76. RequestPath = "/UploadedFiles"
  77. });
  78. app.Run();