Web Applications ve Profile yönetimi…
Asp.Net ile birlikte gelen Profile Api’si bir çok açıdan web sitelerimizi kişileştirmede kolaylık sağlıyor. Bazı temel şeyler için Session nesnesini kullanmak yerine Profile nesnesi ile kolaylıkla kişileştirme işlemlerini yapabiliyoruz. Ancak Visual Studio 2005 ve 2008 versiyonlarında bulunan Web Application modeli ile yeni bir web uygulaması yapmaya çalıştığımızda Profile nesnesini kullanmak Web Site projelerindeki kadar kolay olmuyor. Bunun nedeni Web Application modeli ile değişen derleme olayı.
Web Site şeklinde bir projede Profile için gerekli ayarları web.config’de yaptığınız zaman, Visual Studio ProfileCommon diye,ProfileBase’den türeyen bir sınıf oluşturur ve intellisense de Profile nesnesi olarak bu sınıfa ulaşabiliriz. Bu sınıf web.config’de yapmış olduğumuz Profile özelliklerini barındırır. Bu sayede kodlama yaparken bunlardan kolayca yararlanabiliriz. Ama web application tarzı projelerde bu şekilde olmaz. Çünkü Visual Studio ProfileCommon sınıfını yaratmaz. Bunun nedeni web application tipindeki projelerdeki item’ların tek tek derleniyor olması ve bir birinden bağımsız olarak çıkması.
Ama tabi ki bu Web Application tarzı projelerde Profile Api’sini kullanamayacağımız anlamına gelmiyor. Profile nesnesi,yukarıda da bahsettiğim gibi ProfileBase sınıfından türüyor. HttpContext.Current.Profile şeklinde bu ProfileBase sınıfına ulaşabilirsiniz.
ProfileBase p = (ProfileBase)HttpContect.Current.Profile;
p["Firstname"] = “Arda”;
p["Lastname"] = “Çetinkaya”;
şeklinde web.config’deki profile özelliklerine ulaşabilirsiniz. Profile Api’sinin kullanımı hakkında http://www.csharpnedir.com/makalegoster.asp?MId=644 adresindeki Burak Selim Şenyurt’un makalesine de göz atmanızı tavsiye ederim.

Microsoft Live Labs, çok katmanlı web uygulamaları geliştirmede, geliştiriciye kolaylık sağlaması açısından yeni bir yaklaşım ile karşımıza çıkıyor. Bir web uygulamasını, çok katmanlı bir mimarinin web tarafındaki kullanıcı arayüz katmanı olarak düşünebiliriz aslında. Bundan dolayı çok katmanlı web uygulamaları konsepti ne kadar anlamlı tartışılır. Ama gelişen teknoloji ve büyüyen internetten dolayı standart “application” kavramının yavaş yavaş “web application” kavramına dönüşmesi sanırım bu olaya biraz açıklık getirir. Çok dağılmadan Volta’ya geri dönelim.