在启动文件中,我尝试将 IHttpContextAccessor 注入构造函数本身。
在本地运行 API 时,IHttpContextAccessor 在启动类中成功注入。但是,当我将其部署到 Azure kubernetes 服务时,它失败并报告以下异常。甚至 pod 状态也是 crashloopbackoff。
有什么建议我该如何解决这个问题?
这是启动类。
public class Startup
{
private readonly IConfiguration _configuration;
private readonly ILogger _logger;
private readonly IHttpContextAccessor _httpContextAccessor;
public Startup(IConfiguration configuration, ILogger logger, IHttpContextAccessor httpContextAccessor)
{
_configuration = configuration ?? throw new ArgumentNullException(nameof(configuration));
_logger = logger ?? throw new ArgumentNullException(nameof(logger));
_httpContextAccessor = httpContextAccessor ?? throw new ArgumentNullException(nameof(httpContextAccessor));
_logger.LogProcessStart();
}
}
Run Code Online (Sandbox Code Playgroud)
这是 pod 日志中的异常。
Unhandled exception. System.InvalidOperationException: Unable to resolve service for type 'Microsoft.AspNetCore.Http.IHttpContextAccessor' whileattempting to activate 'API.Startup'. …Run Code Online (Sandbox Code Playgroud)