gpt4 book ai didi

c# - ASP.Net Core,在 Controller 中检测调试与不调试

转载 作者:可可西里 更新时间:2023-11-01 08:18:42 26 4
gpt4 key购买 nike

我正在编写我的第一个 ASP.Net 代码 Web 应用程序,在我的 Controller 中我想要一个 if 语句来检查我是否处于 Debug模式。我知道在 Startup.cs 文件中我可以检查 env.IsDevelopment() 但那是因为 IHostingEnvironment 已传递到其中。我一直无法找到一种方法来检查普通 Controller 内的此状态。 ASP.Net Core 中是否有一种方法可以检测我何时在我丢失的 Controller 内处于 Debug模式?

最佳答案

更新:@Pradeep Kumar 的 post below是这里更正确的答案。此答案仅指示如何通过 Controller 中的依赖注入(inject)访问 IsDevelopment() 环境标志。

更新:IHostingEnvironment 在 .Net Core 3.1 中已过时,请参阅以下 .Net Core 3.1+ https://stackoverflow.com/a/61703339/2525561

您应该能够将 IHostingEnvironment 注入(inject)到您的 Controller 构造函数中。

protected readonly IHostingEnvironment HostingEnvironment;

public TestController(IConfiguration configuration, IHostingEnvironment hostingEnv){
this.Configuration = configuration;
this.HostingEnvironment = hostingEnv;
}

[HttpGet]
public IActionResult Test(){
if(this.HostingEnvironment.IsDevelopment()){
// Do something
}

return View();
}

关于c# - ASP.Net Core,在 Controller 中检测调试与不调试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42776109/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com