在 ASP.NET Core 6 中啟動時存取設定
在先前的 ASP.NET Core 版本中,可以透過 Startup.cs 類別存取 IConfiguration 和 IHostEnvironment 物件。但是,在 .NET 6 及更高版本中,傳統的 Startup 類別已被移除。
在 .NET 6 中存取配置和環境
在沒有 Startup 類別的情況下,要在 ASP.NET Core 6 中存取 Configuration 和 Environment 對象,請使用以下方法:
1. 使用 WebApplicationBuilder
由 WebApplication.CreateBuilder(args) 傳回的 WebApplicationBuilder 提供對 Configuration 和 Environment 屬性的存取:
<code class="language-csharp">var builder = WebApplication.CreateBuilder(args); IConfiguration configuration = builder.Configuration; IWebHostEnvironment environment = builder.Environment;</code>
2. 使用 WebApplication
由 WebApplicationBuilder.Build() 傳回的 WebApplication 也公開了 Configuration 和 Environment 屬性:
<code class="language-csharp">var app = builder.Build(); IConfiguration configuration = app.Configuration; IWebHostEnvironment environment = app.Environment;</code>
在 Program.cs 檔案中存取設定
要在 Program.cs 檔案中存取 Configuration 對象,請使用 WebApplicationBuilder 的 Configuration 屬性:
<code class="language-csharp">var builder = WebApplication.CreateBuilder(args); // 将服务添加到容器。 builder.Services.AddRazorPages(); builder.Services.AddDbContext<FestifyContext>(opt => opt.UseSqlServer( builder.Configuration.GetConnectionString("Festify"))); var app = builder.Build(); // 配置 HTTP 请求管道。 if (!app.Environment.IsDevelopment()) { app.UseExceptionHandler("/Error"); } app.UseHttpsRedirection(); app.UseStaticFiles(); app.UseRouting(); app.MapRazorPages(); app.Run();</code>
請注意,FestifyContext
需要根據您的實際項目進行調整。 這段程式碼展示如何在Program.cs
中使用builder.Configuration
來取得連接字串。
以上是如何在沒有 Startup.cs 的情況下存取 ASP.NET Core 6 中的 IConfiguration 和 IHostEnvironment?的詳細內容。更多資訊請關注PHP中文網其他相關文章!