Bir önceki yazida continue butonuna ve complete step ine dikkat edin demiştik çünkü continue butonu'nun click event'i site üzerindeki Client rolünü belirlemek açısından çok elverişli bir yordam gibi gözüküor veya bunun için Create User Wizard'in CreatedUser event'inide kullanabiliriz.Yani kullanıcı kayıt işlemini tamamladıgında Sihirbaza girdiği UserName i alsak ve o ismi Client roluna bağlasak siteye bu yolla üye olan herkez Client rolune atanmış olur.Yani bir bakima database deki o kullanıcı ile ilgili alana gidip Client yazacak, bunun için Sql ile Uygulamamız arasında bağlantı kurmamız gerekiyor gibi gözüküyor ama herşeyi düşünen Microsoft bizi gene düşünmüş ve bunun için Roles diye bir class yazmış , bizim tek yapmamız gereken bu class'in AddUserToRole methodunu kullanmak.

 

Burada en çok yapılan hata, yanlışlıkla AddUserToRole e basacağına UsersToRole veya UsersToRoles e istemeden tiklamak.Add User to Role dediğinizden emin oldun.Role sadece bir kullanıcıyı ekliycez.İyi güzel kullanıcıyı role ekliyoruzda biz daha önce Client ve Admin gibi 2 tane rol oldugunu belirlemedik.Bunu belirlerkende gene suya sabuna dokunmuyoruz ve bizim için hazırlanmış oldukça user friendly bir arayüz sunan Asp.net configuration aracını kullanıcaz , ilgili yere project sekmesinin altından ulaşabilirsiniz.Ancak bu yapilandirmayi yapmadan önce yapmamız gereken birkaç ufak şey var çünkü daha henüz Uygulamamız ile Sql Server arasındaki bağlantının kurulması için gerekecek ilgili yapılandırmalari Web.Config üzerinden yapmadık.

Web config uygulamalarimizla alakalı genel ayarlari tuttugumuz yerdir örneğin Connection String imizi Web.config üzerinde bir kere oluştururuz ve daha sonra configuration manager class'ini kullanarak ayni connection string i defalarca kullanırız,tekrar tekrar yazmak zorunda kalmayız,Ve üzerinde değişiklik yapmamız gerektiğinde sadece bir yerden değiştirerek sorunu halletmiş oluruz, aksi taktirde uygulamamizda bağlanti stringini kullandıgımız her yerden değiştirmenin ne kadar sıkıntılı olabileceğini bir düşünün.Şimdi gelelim yapilandirma ayarlarina ; Eğer sql server kullanıyorsak yapmamız gereken şey Machine.config den kopya çekmek olacak.peki machine.config nedir ? web.config sadece bir uygulama için ayarların yapıldıgı yerdir , yani sadece 1 web sitesi için gibi düşünün ama eğer bütün uygulamalarda olmasını istediğim bir ayar olsaydı bunu machine.config den sağlardım ama böyle birşeye ihtiyacım yok,sizde üzerinde herhangi bir şeyi yanlışlıkla silip değiştirmemeye dikkat edin.Machine.config e ulaşmak için izlemem gereken yol şöyle ;

c / windows / microsoft.net / framework / v2.0.50727 / config / machine.config

Burada system.web taglarinin içinden membership ve role menager taglarını tamamiyle kopyalayıp kendi uygulamamizda ki web.config in içindeki system.web in altına yapıştırıyoruz. system.web taglarıda bütün site genelinde olması gereken ayarları ifade eder.burada providers lardan sonra clear demem gerekiyor çünkü machine deki ayarları iptal edip web.config im içindeki ayarların kullanılmasını istiyorum. 

 

Burada membership ve role manager daki connection string name e dikkat edin..oraya connection string inize ne isim verecekseniz aynısını verin,buraya membershipDeneme ismini verdiğimizi düşünürsek web configüzerinde yapacağımız connection string ayarları şu şekilde olmak zorunda ;

 

Şimdi ise sira authenticaion modu belirlemeye geldi , bizim uygulamamiz bir web uygulamasi oldugu için Forms u seçiyoruz ; uygulamamizin index sayfası default.aspx ve login sayfasıda giris.aspx.

 

Uygulamanın kalan kısmına bidahaki bölümde devam edicez.