MVC mimarisini kullanarak bir ASP.NET projesi geliştiriyorsanız proje geliştirme sırasındaki hedeflerinizden birisi de projenin dinamik bir yapıya sahip olmasılıdır. Aksi durumda MVC mimarisini boşa kullanmış oluruz. Buradaki dinamiklik ile bahsetmek istediğim projede bulunan bazı değişkenleri değiştirerek aynı projeyi başka bir firmada ya da başka bir görevle kullanabilmektir. Bu konu kapsamında MVC Web.config dosyasında değer tanımlama ve bu değeri okumak bazen gerekebilir.
Bu İşlem Neden Gerekir?
web.config dosyası projeye ait bazı bilgileri tuttuğu gibi projede kullanacağınız bazı değişkenleri de tutabilir. Bu işlemin neden gerekli olduğunu size küçük ama gerçek bir örnek ile anlatayım.
Oluşturmakta olduğum MVC projesi arka tarafında bir veritabanı ile iletişime geçiyor. veritabanının adı ABC olsun. ABC veritabanının hiç bir tablosunda firmanın isim bilgisi bulunmamaktadır ve ben de firmanın adını oluşturmakta olduğum web sitenin footer kısmında yazdırmak istiyorum. Ancak firma adını bir değişkende tutmak istiyorum çünkü bu web sitenin tasarımı değiştirip başka bir firmada aynı işlevlere sahip siteyi kullanabileceğimi düşünmenizi istiyorum.
İşte tam bu senaryoda Web.config dosyasında FirmaAdi şeklinde bir değişken tanımlayacağım. FirmaAdi değişkenini bu siteyi başka bir sunucuya kurarken değiştirirsem bu bilgi de tasarım kısmında kendisini otomatik olarak değiştirecektir.
MVC Web.config Dosyasında Değer Tanımlama
Aslında son derece kolay bir yöntem diyebilirim. Visual Studio üzerinden Web.config dosyasını açın ve appSettings etiketleri arasına şu formatta değişkenlerinizi tanımlayabilirsiniz:
<add key="FirmaAdi" value="Firma Adı"/>
MVC Web.config Dosyasında Değer Okuma
Aşağıdaki kod bloğu ile oluşturmuş olduğunuz değişkeni okuyabilirsiniz.
string userName = WebConfigurationManager.AppSettings["FirmaAdi"]
Eğer benim gibi değişkene herhangi bir View içerisinde erişecekseniz:
@System.Configuration.ConfigurationManager.AppSettings["FirmaAdi"]
Çocukluğumdan beri arabalara olan ilgim babam sayesinde başlamıştır. Araba manyağı seviyesinde bir ilgim var ancak bunu her ortamda dile getirmem. Teknolojiye ve bilgisayara olan ilgim kendimi tanımaya başladım başlayalı oldu. Şimdi ise kendimce kod yazabilen bir bilgisayar mühendisi olarak çalışıyorum.