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.