Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

1.2K
Visualizações
ASP.NET Core 6 cómo acceder a la configuración durante el inicio

En versiones anteriores, teníamos la clase Startup.cs y obteníamos el objeto de configuración de la siguiente manera en el archivo de inicio .

 public class Startup { private readonly IHostEnvironment environment; private readonly IConfiguration config; public Startup(IConfiguration configuration, IHostEnvironment environment) { this.config = configuration; this.environment = environment; } public void ConfigureServices(IServiceCollection services) { // Add Services } public void Configure(IApplicationBuilder app, IWebHostEnvironment env) { // Add Middlewares } }

Ahora en .NET 6 (con Visual Studio 2022), no vemos la clase Startup.cs . Parece que sus días están contados. Entonces, ¿cómo obtenemos estos objetos como Configuración (IConfiguración) y Entorno de alojamiento (IHostEnvironment)?

¿Cómo obtenemos estos objetos, por ejemplo, leer la configuración de appsettings? Actualmente, el archivo Program.cs tiene este aspecto.

 using Festify.Database; using Microsoft.EntityFrameworkCore; var builder = WebApplication.CreateBuilder(args); // Add services to the container. builder.Services.AddRazorPages(); builder.Services.AddDbContext<FestifyContext>(); //////////////////////////////////////////////// // The following is Giving me error as Configuration // object is not avaible, I dont know how to inject this here. //////////////////////////////////////////////// builder.Services.AddDbContext<FestifyContext>(opt => opt.UseSqlServer( Configuration.GetConnectionString("Festify"))); var app = builder.Build(); // Configure the HTTP request pipeline. if (!app.Environment.IsDevelopment()) { app.UseExceptionHandler("/Error"); // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts. app.UseHsts(); } app.UseHttpsRedirection(); app.UseStaticFiles(); app.UseRouting(); app.UseAuthorization(); app.MapRazorPages(); app.Run();

Quiero saber cómo leer la configuración de appsettings.json.

over 4 years ago · Santiago Trujillo
6 Respostas
Responde à pergunta

0

Todo lo que necesita es agregar "constructor". antes de su configuración

Me gusta:

 builder.Services.AddDbContext<FestifyContext>(opt =>opt.UseSqlServer(builder.Configuration.GetConnectionString("Festify")));
over 4 years ago · Santiago Trujillo Relatório

0

Los siguientes códigos me funcionaron:

Programa.cs:

 var builder = WebApplication.CreateBuilder(args); string connString = builder.Configuration.GetConnectionString("conStr"); ConnectionString = connString; ... partial class Program { public static string? ConnectionString { get; private set; } } calling class: string cnStr = Program.ConnectionString;
over 4 years ago · Santiago Trujillo Relatório

0

En Program.cs , WebApplicationBuilder se crea como se muestra a continuación.

 var builder = WebApplication.CreateBuilder(args);

Una vez que tenemos el constructor creado, la configuración está disponible.

Supongamos que tiene el appSettings.json predeterminado en su lugar. El siguiente código de ejemplo devolvería la configuración del nivel de registro predeterminado del archivo de configuración JSON.

 builder.Configuration["Logging:LogLevel:Default"] // returns "Warning"

Una vez que la aplicación se está ejecutando, puede acceder a los ajustes de Configuración a través de la inserción de dependencias en otras clases de su aplicación.

 public MyClass(IConfiguration configuration) { var logLevel = configuration["Logging:LogLevel:Default"]; }

Una buena característica que vale la pena considerar es crear una clase que represente su configuración y luego vincular la configuración a una instancia de ese tipo de clase. Por ejemplo, supongamos que crea una nueva clase llamada MyAppSettings con la misma estructura que su appSettings.json , puede hacer lo siguiente:

 var myAppSettings = builder.Configuration.Get<MyAppSettings>(); string logLevel = myAppSettings.Logging.LogLevel.Default;
over 4 years ago · Santiago Trujillo Relatório

0

Esto funcionó para mí ---

 // Read in from JSON file builder.Services.Configure<ConnectionKeys>(builder.Configuration.GetSection("ConnectionKeys"));
over 4 years ago · Santiago Trujillo Relatório

0

.NET 6 ya proporciona un objeto de construcción en Program.cs

 var builder = WebApplication.CreateBuilder(args);

Simplemente use este generador para acceder a la configuración y el entorno como ejemplo para obtener ConnectionString de app.settings.cs de la siguiente manera:

 builder.Services.AddDbContext<DataContext>( options => { options.UseSqlServer(builder.Configuration.GetConnectionString("DefaultConnectiion")); });
over 4 years ago · Santiago Trujillo Relatório

0

WebApplicationBuilder devuelto por WebApplication.CreateBuilder(args) expone las propiedades de Configuration y Environment :

 var builder = WebApplication.CreateBuilder(args); // Add services to the container. ... ConfigurationManager configuration = builder.Configuration; IWebHostEnvironment environment = builder.Environment;

La aplicación web devuelta por WebApplication WebApplicationBuilder.Build() también expone la Configuration y el Environment :

 var app = builder.Build(); IConfiguration configuration = app.Configuration; IWebHostEnvironment environment = app.Environment;

Consulte también la guía de migración y los ejemplos de código .

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda