ASP.NET 2.0’ın SQL Server ile Konfigrasyonu
0.Giriş
1.SQL Server’ın Konfigrasyonu
1.1.Wizard Kullanımı
1.2.Paremertelerin Kullanımı
2.ASP.NET’in Konfigrasyonu
0.Giriş
ASP.NET 2.0 ın yeni servisleri Membership, Role Management, Profile, Web Parts ve Web Events bir veritabanına ihtiyaç duyarlar. Bunu için .Net Frameork 2.0 SDK ile gelen aspnet_regsql.exe yi kullanarak SQL Server te bir veritabanı oluşturmak mümkün. SQL Server 7.0, 2000 ve 2005 sürümlerini destekler. Şimdi bu veritabanın konfigrasyonun oluşturulması, modifiye edilmesi ve ASP.NET’te kullanılmasına ilişikin detaylarını inceleyeceğiz.
1.SQL Server’ın Konfigrasyonu
SQL Server’da ASPNET servislerinin kullanabileceği bir veritabanı oluşturmak için iki seçeneğimiz var : Wizard veya Parametrelerin kullanımı.
1.1.Wizard Kullanımı
C:\WINDOWS\Microsoft.NET\Frameworkv2.0.50727\ aspnet_regsql.exe adresinden yi EXE mizi çalıştırdığımızda bir Wizard gerekli kurulum için bizi yönlendirecektir.
Önce Wizard kullanarak kurulumuzu tamamlayaım ardından veritabanının özelliştirilmesi ile ilgili detayları nasıl yapacağımıza bakacağız.
Adım 1 : Wizard tamamlandığında veritabanımızın destekleyeceği servisleri belirtiyor. İkinci paragrta görüldüğü gibi özelliklerin kişiselleştirilebilmesi için aspnet_regsl.exe nin parametreli kullanımasını öneriyor
Adım 2 : Daha önce belirttiğim gibi wizard ile yapılan bu işlemde özelleştirilebilir bir seçenek mevcut değil. Ya bütün servisleri destekleyen kurulumu yapabileceğimiz yada hepsini kaldırabileceğimiz iki seçenek mevcut. Şu an kurulumu gerçekleştirdiğimiz için Configrue SQL Server for application services seçeneğini seçip Devam ediyoruz.
Adım 3 : Burada, oluşturacağımız veritabanının Login bilgilerini giriyoruz. SQL Server 7.0, 2000 veya 2005 verisyonlarından birinin makine adı veya IP adresini girebiliriz. Authectication Type’ı da seçtikten sonra sıra Database ‘e geliyor. <default> şeklinde bırakırsak oluşturulacak veritabanının ismi aspnetdb olacaktır. Farklı bir isimde oluşturmak istiyorsak buraya girebiliriz. Ayrıca, görüldüğü üzere bu bilgi girişi bir ComboBox. Daha önceden varolan bir veritabanınada aspnet tablolarını eklemeniz mümkün. Not : Oluşturulan tablo isimleri aspnet_ ile başlıyor.
Adım 4 : Görüldüğü üzere kurulum bilgilerini girdik ve son kontrol için özet bilgiler görüntüleniyor. Bir önceki ekranda Database hanesini <default> bıraktığımı için bu ekranda Database name olarak aspnetdb gözüküyor. Burada Next dediğimiz zaman kurulum başlayacak ve veritabanımızda 11Tablo, 55Stored Procedure oluşacak.
SQL Server 2000
SQL Server 2005
Görüldüğü üzere kurulum başarıyla tamamlandı ve 11 Tablo ve 55 Stored Procedure oluşturuldu. Artık Membership, Role Management, Profile, Web Parts ve Web Events servislerinin bilgileri veritabanımızda tutulmaya hazır.
1.2.Paremertelerin Kullanımı
SQL Server konfigrasyonunu yaparken tüm servislerin kullanmayacağı bir veritabanı oluşturmak isteyebiliriz. Yaptığımız bir intranet uygulamasını Setup haline getirirken. İlgili kurulunu yapacak bir yardımcı exe üretmek istebiliriz. Wizard kullanırken ihtiyaç duyacağımız parametreler ve açıklamaları şu şekildedir.
- W : Varsayılan Parametredir. Wizard modu başlatır.
- C : Connection String. Veritabanının kurulumunun yapılacağı Server ın giriş bilgileri.
- S : Server, kurulumun yapılacağı Server’ın istmi ( Not : Eğer bir instance ise SERVERNAME\INSTANCENAME şeklinde olmalıdır. )
- U : Login ID, kurulum yapılacak Server’a SQL Server Authentication ile giriş yapılacak ise kullanıcı adı bu parametre ile belirtilir.
- P : Password, kurulum yapılacak Server’a SQL Server Authentication ile giriş yapılacak ise parola bu parametre ile belirtilir.
- E : Kurulm yapılacak Server’a Windows Authentication ile giriş yapılacak ise bu parametre yalın halde kullanılır.
- D : Database, yukarıda belirttiğim gibi oluşturulan veritabanı ismi varsayılan olarak aspnetdb. Eğer farklı bir isimle veritabanı oluşturulacaksa bu parametre ile veritabanı ismi belirtirtilir.
- A : Yukarıda belirttiğim gibi Wizard modda iken tüm servisler için gerekli tablo yapıları oluşturuyor. Biz tüm özellikleri kullanmayacaksak bu parametr yardımıyla sadece kullanacağımız servislerin ihtiyaç duyduğu tabloların veritabanında oluşturulmasını sağlayabiliriz. Bu parametre kullanıldığı zaman şu eklere ihtiyaç duyar :
- all : Tüm servisler için gerekli tablo ve sp ler kurulur.
- m : Membership servisi için gerekli tablo ve sp ler kurulur.
- r : Role Management servisi için gerekli tablo ve sp ler kurulur.
- p : Profile servisi için gerekli tablo ve sp ler kurulur.
- c : Web Parts Personalization servisi için gerekli tablo ve sp ler kurulur.
- w : Web Event servisi için gerekli tablo ve sp ler kurulur.
Bir den fazla özelliğin bir arada kullanımı durumunda araya pipe ( | ) işareti konularak kullanılır. Örneğin sadece Membership ve Role Management servisleri kullanılacaksa:
- A m|r
Şeklinde kullanılmalıdır.
- R : Artık kullanmadığımız bir servis varsa bu parametre yardımıyla veritabanımızda belirteceğimiz özellikleri kaldırmak mümkün. Bu parametre kullanıldığı zaman şu eklere ihtiyaç duyar :
- all : Tüm servisler servisi için gerekli tablo ve sp ler kaldırılır.
- m : Membership servisi için gerekli tablo ve sp ler kaldırılır.
- r : Role Management servisi için gerekli tablo ve sp ler kaldırılır.
- p : Profile servisi için gerekli tablo ve sp ler kaldırılır.
- c : Web Parts Personalization servisi için gerekli tablo ve sp ler kaldırılır.
- w : Web Event servisi için gerekli tablo ve sp ler kaldırılır.
Bir den fazla özelliğin kaldırılması durumunda araya pipe ( | ) işareti konularak kullanılır. Örneğin sadece Web Pars Personalization ve Web Event servisleri kaldırılacaksa
- R c|w
Şeklinde kullanılmalıdır.
- Q : Hiç bir doğrulama olmadan tüm servisleri kaldırır.
2.ASP.NET’in Konfigrasyonu
Bilindiği ASP.NET config dosyaları ( machine.config veya web.config ) hiyerarşik bir yapıya sahiptirler ve bir üst seviyedeki config dosyasını özelliklerimi ihnerits ( miras ) yoluyla alıp kullanırlar.
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONF IG klasöründe bulunan Machine.Config dosyasınd
Şeklinde bir bilgi bulunur.
Dikkat ederseniz varsayılan olarak .\SQLEXPRESS serverına bağlanıyor.
Az önce de belirttiğimiz gibi .config dosyaları hiyerarşik bir yapıya sahip olduğunudan ASP.NET uygulamamız aspnetdb veritabanını bu ConnectionString e bakarak arayacak. Bu yüzden önce bu bilginin pasif hale getirmek için uygulamamız içinde bulunan web.Config içerisindeki <configration> ve <system.web> elementleri altında bulunan <connectionString> elementi içerisine <remove> etiketi eklyeceğiz. Arından <add> elemnti kullanarak geçerli ConnectionString değerini gireceğiz.
0.Giriş
1.SQL Server’ın Konfigrasyonu
1.1.Wizard Kullanımı
1.2.Paremertelerin Kullanımı
2.ASP.NET’in Konfigrasyonu
0.Giriş
ASP.NET 2.0 ın yeni servisleri Membership, Role Management, Profile, Web Parts ve Web Events bir veritabanına ihtiyaç duyarlar. Bunu için .Net Frameork 2.0 SDK ile gelen aspnet_regsql.exe yi kullanarak SQL Server te bir veritabanı oluşturmak mümkün. SQL Server 7.0, 2000 ve 2005 sürümlerini destekler. Şimdi bu veritabanın konfigrasyonun oluşturulması, modifiye edilmesi ve ASP.NET’te kullanılmasına ilişikin detaylarını inceleyeceğiz.
1.SQL Server’ın Konfigrasyonu
SQL Server’da ASPNET servislerinin kullanabileceği bir veritabanı oluşturmak için iki seçeneğimiz var : Wizard veya Parametrelerin kullanımı.
1.1.Wizard Kullanımı
C:\WINDOWS\Microsoft.NET\Frameworkv2.0.50727\ aspnet_regsql.exe adresinden yi EXE mizi çalıştırdığımızda bir Wizard gerekli kurulum için bizi yönlendirecektir.
Önce Wizard kullanarak kurulumuzu tamamlayaım ardından veritabanının özelliştirilmesi ile ilgili detayları nasıl yapacağımıza bakacağız.
Adım 1 : Wizard tamamlandığında veritabanımızın destekleyeceği servisleri belirtiyor. İkinci paragrta görüldüğü gibi özelliklerin kişiselleştirilebilmesi için aspnet_regsl.exe nin parametreli kullanımasını öneriyor
Adım 2 : Daha önce belirttiğim gibi wizard ile yapılan bu işlemde özelleştirilebilir bir seçenek mevcut değil. Ya bütün servisleri destekleyen kurulumu yapabileceğimiz yada hepsini kaldırabileceğimiz iki seçenek mevcut. Şu an kurulumu gerçekleştirdiğimiz için Configrue SQL Server for application services seçeneğini seçip Devam ediyoruz.
Adım 3 : Burada, oluşturacağımız veritabanının Login bilgilerini giriyoruz. SQL Server 7.0, 2000 veya 2005 verisyonlarından birinin makine adı veya IP adresini girebiliriz. Authectication Type’ı da seçtikten sonra sıra Database ‘e geliyor. <default> şeklinde bırakırsak oluşturulacak veritabanının ismi aspnetdb olacaktır. Farklı bir isimde oluşturmak istiyorsak buraya girebiliriz. Ayrıca, görüldüğü üzere bu bilgi girişi bir ComboBox. Daha önceden varolan bir veritabanınada aspnet tablolarını eklemeniz mümkün. Not : Oluşturulan tablo isimleri aspnet_ ile başlıyor.
Adım 4 : Görüldüğü üzere kurulum bilgilerini girdik ve son kontrol için özet bilgiler görüntüleniyor. Bir önceki ekranda Database hanesini <default> bıraktığımı için bu ekranda Database name olarak aspnetdb gözüküyor. Burada Next dediğimiz zaman kurulum başlayacak ve veritabanımızda 11Tablo, 55Stored Procedure oluşacak.
SQL Server 2000
SQL Server 2005
Görüldüğü üzere kurulum başarıyla tamamlandı ve 11 Tablo ve 55 Stored Procedure oluşturuldu. Artık Membership, Role Management, Profile, Web Parts ve Web Events servislerinin bilgileri veritabanımızda tutulmaya hazır.
1.2.Paremertelerin Kullanımı
SQL Server konfigrasyonunu yaparken tüm servislerin kullanmayacağı bir veritabanı oluşturmak isteyebiliriz. Yaptığımız bir intranet uygulamasını Setup haline getirirken. İlgili kurulunu yapacak bir yardımcı exe üretmek istebiliriz. Wizard kullanırken ihtiyaç duyacağımız parametreler ve açıklamaları şu şekildedir.
- W : Varsayılan Parametredir. Wizard modu başlatır.
- C : Connection String. Veritabanının kurulumunun yapılacağı Server ın giriş bilgileri.
- S : Server, kurulumun yapılacağı Server’ın istmi ( Not : Eğer bir instance ise SERVERNAME\INSTANCENAME şeklinde olmalıdır. )
- U : Login ID, kurulum yapılacak Server’a SQL Server Authentication ile giriş yapılacak ise kullanıcı adı bu parametre ile belirtilir.
- P : Password, kurulum yapılacak Server’a SQL Server Authentication ile giriş yapılacak ise parola bu parametre ile belirtilir.
- E : Kurulm yapılacak Server’a Windows Authentication ile giriş yapılacak ise bu parametre yalın halde kullanılır.
- D : Database, yukarıda belirttiğim gibi oluşturulan veritabanı ismi varsayılan olarak aspnetdb. Eğer farklı bir isimle veritabanı oluşturulacaksa bu parametre ile veritabanı ismi belirtirtilir.
- A : Yukarıda belirttiğim gibi Wizard modda iken tüm servisler için gerekli tablo yapıları oluşturuyor. Biz tüm özellikleri kullanmayacaksak bu parametr yardımıyla sadece kullanacağımız servislerin ihtiyaç duyduğu tabloların veritabanında oluşturulmasını sağlayabiliriz. Bu parametre kullanıldığı zaman şu eklere ihtiyaç duyar :
- all : Tüm servisler için gerekli tablo ve sp ler kurulur.
- m : Membership servisi için gerekli tablo ve sp ler kurulur.
- r : Role Management servisi için gerekli tablo ve sp ler kurulur.
- p : Profile servisi için gerekli tablo ve sp ler kurulur.
- c : Web Parts Personalization servisi için gerekli tablo ve sp ler kurulur.
- w : Web Event servisi için gerekli tablo ve sp ler kurulur.
Bir den fazla özelliğin bir arada kullanımı durumunda araya pipe ( | ) işareti konularak kullanılır. Örneğin sadece Membership ve Role Management servisleri kullanılacaksa:
- A m|r
Şeklinde kullanılmalıdır.
- R : Artık kullanmadığımız bir servis varsa bu parametre yardımıyla veritabanımızda belirteceğimiz özellikleri kaldırmak mümkün. Bu parametre kullanıldığı zaman şu eklere ihtiyaç duyar :
- all : Tüm servisler servisi için gerekli tablo ve sp ler kaldırılır.
- m : Membership servisi için gerekli tablo ve sp ler kaldırılır.
- r : Role Management servisi için gerekli tablo ve sp ler kaldırılır.
- p : Profile servisi için gerekli tablo ve sp ler kaldırılır.
- c : Web Parts Personalization servisi için gerekli tablo ve sp ler kaldırılır.
- w : Web Event servisi için gerekli tablo ve sp ler kaldırılır.
Bir den fazla özelliğin kaldırılması durumunda araya pipe ( | ) işareti konularak kullanılır. Örneğin sadece Web Pars Personalization ve Web Event servisleri kaldırılacaksa
- R c|w
Şeklinde kullanılmalıdır.
- Q : Hiç bir doğrulama olmadan tüm servisleri kaldırır.
2.ASP.NET’in Konfigrasyonu
Bilindiği ASP.NET config dosyaları ( machine.config veya web.config ) hiyerarşik bir yapıya sahiptirler ve bir üst seviyedeki config dosyasını özelliklerimi ihnerits ( miras ) yoluyla alıp kullanırlar.
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONF IG klasöründe bulunan Machine.Config dosyasınd
Şeklinde bir bilgi bulunur.
Dikkat ederseniz varsayılan olarak .\SQLEXPRESS serverına bağlanıyor.
Az önce de belirttiğimiz gibi .config dosyaları hiyerarşik bir yapıya sahip olduğunudan ASP.NET uygulamamız aspnetdb veritabanını bu ConnectionString e bakarak arayacak. Bu yüzden önce bu bilginin pasif hale getirmek için uygulamamız içinde bulunan web.Config içerisindeki <configration> ve <system.web> elementleri altında bulunan <connectionString> elementi içerisine <remove> etiketi eklyeceğiz. Arından <add> elemnti kullanarak geçerli ConnectionString değerini gireceğiz.