DEV Community 👩‍💻👨‍💻

MustafaSamedYeyin
MustafaSamedYeyin

Posted on

Asp.net Core configuration appsettings.json Giriş.

Öncelikle aşağıdaki projeyi local'inize indirin.

Proje

Dev.to.Configuration.Part2 projesini açın.

Bu projede default bir mvc projesi oluşturdum. Ve sadece iki dosyada değişiklik yaptım :

  1. appsettings.json
  2. Index.cshtml

Neler eklendi ?

  1. appsettings.json dosyasına :
"MustafaConfiguration": {
    "Soyad": "YEYIN",
    "Yas":  "24"
  }
Enter fullscreen mode Exit fullscreen mode

configuration'ını ekledim.

  1. Index.cshtml dosyasına
@inject Microsoft.Extensions.Configuration.IConfiguration _config
Enter fullscreen mode Exit fullscreen mode

satırını ve

@_config["MustafaConfiguration:Soyad"]
@_config["MustafaConfiguration:Yas"]
Enter fullscreen mode Exit fullscreen mode

satırlarını ekledim.

Burada yapılmaya çalışılan şey : appsettings.json dosyasında configuration'lara c# tarafında(veya burada olduğu gibi razor tarafında) ulaşmak.

Bunu yapabilmek için : Startup.cs default olarak eklenmiş gelen IConfiguration interface'ini kullandım(View da bir service kullabilmek için inject keyword'ü ile service'in adını yazmanız yeterli.).
public class Startup
    {
        public Startup(IConfiguration configuration)
        {
            Configuration = configuration;
        }
.
.
:
Enter fullscreen mode Exit fullscreen mode

Kısaca açıklama gerekirse : IConfiguration bizim configuration'lara ulaşmamıza sağlayan bir interface'dir.

Ödeviniz :

Local'inize indirdiğiniz projenin (Dev.to.Configuration.Part2 adlı projenin) HomeController adlı controller'ına IConfiguration adlı interface'i di olarak geçin.

Index action'ında MustafaConfiguration adlı configuration tıpkı benim "Index.cshtml"de yakaladığım gibi yakalayın.

"Index.cshtml"e action'dan bilgi göndererek aynı yazıyı yazdırmanız gerekiyor.
Yani ekran da yeniden: "YEYIN 24" içeriğinin çıkması gerekiyor.

Bir dahaki yazıda görüşmek üzere.

En iyi dileklerim ile.

Mustafa Samed Yeyin.

Top comments (0)

🌚 Friends don't let friends browse without dark mode.

Sorry, it's true.