Menambahkan File Konfigurasi appsettings.json Pada Project NET Core

Pada aplikasi console NET 7, anda dapat mengakses konfigurasi menggunakan file appsettings.json sebagai alternatif untuk mengatur konfigurasi aplikasi anda. Berikut adalah langkah-langkah untuk membaca konfigurasi dari berkas appsettings.json pada aplikasi console .NET 7:

  1. Tambahkan file appsettings.json:
    Buatlah file appsettings.json di direktori proyek atau dalam subdirektori tertentu (biasanya disebut Configs atau Settings).
  1. Konfigurasi appsettings.json:
    Buka file appsettings.json dan tambahkan konfigurasi. Contoh sederhana:
{
    "AppSettings": {
        "ApiKey": "api-key-anda",
        "ApiUrl": "https://api.example.com"
    },
    "DatabaseSettings": {
        "ServerName": "nama-server",
        "DatabaseName": "nama-database",
        "Username": "user-database",
        "Password": "pass-database"
    }
}

Kemudian pastikan properties dirubah ke “Copy if newer” atau “Copy Always” sehingga setelah setiap terjadi perubahan secara otomatis file akan di copy ke folder debug/release di folder bin:

  1. Tambahkan Dependensi:
    Pastikan anda telah menambahkan library Microsoft.Extensions.Configuration ke proyek. Jika belum, anda bisa melakukannya melalui NuGet Package Manager atau dengan menambahkan referensi langsung di file .csproj anda. Contoh menggunakan NuGet Package Manager Console:
Install-Package Microsoft.Extensions.Configuration
Install-Package Microsoft.Extensions.Configuration.Json
  1. Baca Konfigurasi:
    Di dalam metode Main atau metode masukan kode untuk membaca konfigurasi dari file appsettings.json sebagai berikut:
#nullable disable
using Microsoft.Extensions.Configuration;

class Program
{
    static void Main(string[] args)
    {
        IConfiguration configuration = new ConfigurationBuilder()
            .AddJsonFile("appsettings.json", optional: true, reloadOnChange: true)
            .Build();

        string apiKey = configuration["AppSettings:ApiKey"];
        string apiUrl = configuration["AppSettings:ApiUrl"];
        string server = configuration["DatabaseSettings:ServerName"];
        string database = configuration["DatabaseSettings:DatabaseName"];
        string username = configuration["DatabaseSettings:Username"];
        string password = configuration["DatabaseSettings:Password"];

        Console.WriteLine($"----- API Settings");
        Console.WriteLine($"API Key  : {apiKey}");
        Console.WriteLine($"API URL  : {apiUrl}");
        Console.WriteLine();
        Console.WriteLine($"----- Database Settings");
        Console.WriteLine($"Server   : {server}");
        Console.WriteLine($"Database : {database}");
        Console.WriteLine($"Username : {username}");
        Console.WriteLine($"Password : {password}");
    }
}
  1. Jalankan program Contoh hasil program
----- API Settings
API Key  : api-key-anda
API URL  : https://api.example.com

----- Database Settings
Server   : nama-server
Database : nama-database
Username : user-database
Password : pass-database

Pastikan anda telah mengganti nama entri dan nilai sesuai dengan struktur berkas appsettings.json.