.NET Core 3 API - перестает работать после одного запроса? - PullRequest
0 голосов
/ 07 октября 2019

У меня странная проблема, когда запросы работают только один раз. Это происходит как в IIS, так и в IIS Express. Если я перезапущу / перезапущу, он будет работать снова, но все равно только один раз. Размещение точки останова показывает, что последующие запросы никогда не попадают в контроллер ...

[HttpGet("private/{zipCode}")]
public IActionResult PrivateZipSearch(string zipCode)

Startup.Configure

public void Configure(IApplicationBuilder app, IWebHostEnvironment env, IServiceProvider srv, ILoggerFactory loggerFactory)
{
     loggerFactory.AddProvider(new DbLoggerProvider(this.Configuration, srv.GetService<IHttpContextAccessor>()));

     app.UseHttpsRedirection(); // Redirect HTTP -> HTTPS
     app.UseRouting();
     {
         app.UseCors(Config.Settings.Cors.PolicyName);
         app.UseAuthentication();
     }

     // Hangfire
     {
         app.UseHangfireDashboard();
         app.UseHangfireServer();
     }

     app.UseMiddleware<LoggingMiddleware>();
     app.UseMiddleware<OptionsVerbMiddleware>();

     // Must be last!
     app.UseEndpoints(x => x.MapControllers());
 }

Любые предложения будут приняты с благодарностью! Спасибо!

1 Ответ

0 голосов
/ 10 октября 2019

Оказывается, это потому, что я устанавливал HttpContext в поле.

Есть куча того, что можно и чего нельзя делать здесь: https://github.com/davidfowl/AspNetCoreDiagnosticScenarios/blob/master/AspNetCoreGuidance.md#do-not-store-ihttpcontextaccessorhttpcontext-in-a-field

...