Lesson 29 of 40 Configuration Intermediate 35 min

Configuration and appsettings.json

Learn how configuration works in ASP.NET Core and how to use appsettings.json to manage important application settings such as database connections, environment settings, and custom configuration values.

Part 1: What Is Configuration?

Configuration refers to the settings that control how your application behaves. Instead of hardcoding values directly into your code, ASP.NET Core encourages storing these values in configuration files.

This makes your application more flexible and easier to maintain.

Part 2: Why Use appsettings.json?

appsettings.json is the default configuration file in ASP.NET Core. It stores key application settings in a structured JSON format.

Using this file allows you to:

Part 3: Example appsettings.json File

A typical appsettings.json file may look like this:

{
  "ConnectionStrings": {
    "DefaultConnection": "Server=(localdb)\\mssqllocaldb;Database=StudentDb;Trusted_Connection=True;"
  },

  "Logging": {
    "LogLevel": {
      "Default": "Information"
    }
  },

  "AppSettings": {
    "SiteTitle": "Student Management System"
  }
}

This file stores connection strings, logging settings, and custom configuration values.

Part 4: Reading Configuration Values

ASP.NET Core allows you to read configuration values using dependency injection.

private readonly IConfiguration _config;

public HomeController(IConfiguration config)
{
  _config = config;
}

var title = _config["AppSettings:SiteTitle"];

This retrieves the value from the configuration file.

Part 5: Connection Strings

One of the most important uses of appsettings.json is storing database connection strings.

These values are then used when configuring services such as Entity Framework Core.

builder.Services.AddDbContext<AppDbContext>(options =>
  options.UseSqlServer(builder.Configuration.GetConnectionString("DefaultConnection")));

This keeps sensitive connection details out of your application code.

Part 6: Environment-Specific Settings

ASP.NET Core supports different configuration files for different environments.

This allows you to use different settings for development and production, such as different databases or logging levels.

Part 7: Configuration in the Student Project

In your Student CRUD application, configuration plays an important role:

This keeps your application clean and adaptable.

Part 8: Best Practices

Good configuration management makes your application easier to maintain and deploy.

Summary

Configuration is a key part of ASP.NET Core applications. By using appsettings.json, you can manage settings cleanly, separate them from code, and make your application more flexible and scalable.

VISUAL STUDIO 2026 MADE EASY
Recommended Book

VISUAL STUDIO 2026 MADE EASY

Build real applications with C#, VB.NET, Python, JavaScript, C++, and .NET 10. A practical companion for mastering Visual Studio 2026 step by step.