İçeriğe geç

.Net Core ile app.settings Dosyasından Değer Okuma

.Net Core’un hayatımıza girmesi ile aslında pek çok yazılımcı bir bakıma rahat bir nefes aldı diyebiliriz. Elbette yaygın olarak bilindiği üzere bu teknolojinin en önemli ve güzel tarafı şimdilik %90 diyebileceğimiz ve muhtemelen yakında %100 olacak platform bağımsızlığıdır.

Örneğin burada yazdığınız bir uygulamayı linux, macOS, windows gibi platformların hemen hepsinde çalıştırabiliyor olmanız, bu teknolojinin getirdiği en büyük yeniliklerin başında geliyor.

Tabii ki buradaki %90 tabiri biraz afaki. Zira tüm sınıfların SDK’ları %100 oranında tamamlanmamış olasa da çok ama çok çok büyük bir kısmının SDK’ları yaklaşık 3-4 yıldır dönüştürülmüş ve çıkartılmıştır.

Şimdi gelelim .net core ile hayatımıza giren ve eskiden web.config olarak andığımız proje yapılandırma dosyamızın yeni versiyonu olan appSetting.json dosyamıza. Bu dosyada projenin içerisinde kullanmak istediğiniz, ancak web.config dosyasında olduğu gibi tek yerden müdahale etmek istediğiniz ayarları saklayabilir ve bunu projenizin hemen her yerinden çağırarak kullanabilirsiniz.

Tabi bunu yaparken benim yaptığım gibi bir static sınıf tanımlamak da elbette işinize gelecektir diye düşünüyor ve örneğimi (kendi kullandığım şekli ile) paylaşıyorum.

using Microsoft.Extensions.Configuration;

namespace OrnekProjem
{
public class GeneralFunctions
    {
        public static IConfiguration Configuration { get; set; }

        public static string GetAppSettingsParameter(string Key)
        {
            IConfiguration configuration = new ConfigurationBuilder()
           .AddJsonFile("appsettings.json", true, true)
           .Build();

            return configuration.GetSection("UygulamaAyarlarim").GetSection(Key).Value;
        }
    }
}

Burada ilk dikkat edilmesi gereken kısım “IConfiguration” ve “ConfigurationBuilder” kısımlarıdır. Zira burada projenizin ayarlarına ulaşmak için bu interface’i çağırmanız gerekiyor. Aksi taktirde appSetting.json dosyasına ulaşmanız mümkün olamayacaktır.

Bu sınıfı oluşturup içerisini de bu şekilde yazdıktan sonra artık appSetting.json “UygulamaAyarlarim” bölümünün altına açtığınız her bir değere buradan ulaşabilirsiniz.

İşte örnek appSetting.json dosyamızın içeriği;

{
  "UygulamaAyarlarim": {
    "BaglantiCumlecigim": "Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;",
    "SessionTimeoutSurem": 120
  }
}

Herhangi bir controller, service, vb… katmanda kullanımı ise aşağıdaki gibi olacaktır;

string cumle = GeneralFunctions.GetAppSettingsParameter("BaglantiCumlecigim");

İşte aslında olay bu kadar basit. 🙂

4 1 vote
Article Rating
Tarih:.Net CoreAsp.NetAsp.Net - C#Asp.Net - MVCÇerez Bilgiler
Subscribe
Bildir
guest
0 Yorum
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x