在我的ASP.NET Core項目中,我依靠命令行參數來覆蓋默認url並覆蓋環境設置。通過ConfiguratonBuilder獲取主機環境?
DOTNET手錶運行--server.urls = https://localhost:5001 --environment 「本地主機」
我用CommandLineConfigurationExtensions到args
添加到ConfigurationBuilder。這工作得很好,但我也想使用內置配置
public class Program
{
public static void Main(string[] args)
{
var configuration = new ConfigurationBuilder()
.AddCommandLine(args)
.Build();
// More stuff happens with WebHostBuilder,
// and I would very much like to check the
// environment here.
}
}
我想訪問相同的環境設置,都可以通過在Startup
類的Configure()
方法IHostingEnvironment env
參數。但我想這樣做在Main()
我意識到我可以只是解析命令行參數,並尋找自己的值,或從configuration
可變我剛剛建立拉適當的值。然而,當在框架的任何部分中神奇地實例化實現我們其他人使用的接口的類時,顯然存在一種標準化的方法似乎不太合適。
只要'config [「environment」]'「合併」來設置當前環境,我很高興使用它。感謝您的洞察!它爲我提供了非常需要的信心:) –