Tag Archive: Programlama


Asp.Net’te MySQL ile Kimlik Doğrulama ve Yetkilendirme

Dün Asp.NET Login Kontrollerinie MySQL ile kullanabilmek için tüm gün araştırdım durdum. Şimdi de bu bilgileri paylaşmak istedim. Eğer benim gibi asp.net’te yeni iseniz bu bilgiler illaki lazım olur. Çünkü genellikle SQL Server kullanılmak istenmez.

İlk önce yapmanız gereken Mysql.Data 5.2.2‘yi yüklemek(5.2.3 şu an son versiyon fakat ilerde göreceğiniz bir işlemi otomatik olarak yapmıyor). 5.2.2′i buradan bulabilirsiniz.

Projenizin web.config dosyasını açıp bağlantı cümlelerine aşağıdaki gibi bir bağlantı ekleyin:

<connectionStrings>
<remove name=”LocalMySqlServer”/>
<add name=”LocalMySqlServer” connectionString=”server=localhost; user id=root; password=toor; persist security info=true; database=dorknozzle;” providerName=”MySql.Data.MySqlClient”/>
</ connectionStrings>

Proje referanslarına (Projeye sağ tıklayıp>Property Pages’dan) MySQL.Data’yı eklemeniz tavsiye edilir.

Mysql.Data ve Mysql.Web dll’lerini projenizin içindeki Bin klasörüne kopyalayın. Sonra da Solution Explorer’ı tazeleyin.

Dikkat machine.config dosyasında değişiklik yapmanız pek tavsiye edilmeyen birşeydir. Ama mysql için bunları eklememiz gerekiyor. Ve unutmayın ki asp.net servis sağlayıcınız MySQL’i desteklemeyebilir. Bunu en başta sorun.

machine.config dosyasını açıp aşağıda belirtildiği yere autogenerateschema=”true” niteliğini ekleyin:

<membership>
<providers>
<add name=”MySQLMembershipProvider” autogenerateschema=”true” type=”MySql.Web.Security.MySQLMembershipProvider, MySql.Web, Version=5.2.2.0, … />
</providers>
</membership>

Sitenizin konfigurasyon sayfasını açın (Açılmış olan projede, Website > ASP.NET Configuration yolunu izleyin, ya da Solution Explorer’daki çekik ve dünya ikonuna tıklayın). Provider sekmesinde Membership Provide listesinden MySQLMembershipProvider‘ı ve Role Provider listesinden de MySQLRoleProvider‘ı seçin. İsterseniz test linklerine basıp bağlantıları kontrol edebilirsiniz.

Ben eğitim süresince aşağıdaki hatalarla karşılaştım (en azından hatırladıklarım ve kaydettiklerim bunlar)  :) /> :

There is a problem with your selected data store. This can be caused by an invalid server name or credentials, or by insufficient permission. It can also be caused by the role manager feature not being enabled. Click the button below to be redirected to a page where you can choose a new data store.

The following message may help in diagnosing the problem: Unable to initialize provider. Missing or incorrect schema. (c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\machine.config line 145)

Ayrıca aşağıdaki linkler çok faydalı oldu. Ortadaki link en faydalısı (tümü İngilizce kaynaklardır):

www.dotnetsurfers.com
blog.nolanbailey.com
forums.asp.net

Asp.Net Authorization & Authentication with MySQL

I’ve been googling all day to find how to use the ASP.NET Login Controls with MySQL. I did it. I would share this knowledge here.

Firstly install Mysql.Data 5.2.2 (version 5.2.3 doesn’t auto generate schema). You can find it here.

Add connection string for your database connection:

<connectionStrings>
<remove name="LocalMySqlServer"/>
<add name="LocalMySqlServer" connectionString="server=localhost; user id=root; password=toor; persist security info=true; database=dorknozzle;" providerName="MySql.Data.MySqlClient"/>
</ connectionStrings>

Copy dll s Mysql.Data and Mysql.Web into your application’s Bin folder and refresh the Solution Explorer from Visual Studio.

Open machine.config file and add attribute autogenerateschema=”true” at this line:

<membership>
<providers>
<add name="MySQLMembershipProvider" autogenerateschema="true" type="MySql.Web.Security.MySQLMembershipProvider, MySql.Web, Version=5.2.2.0, ... />
</providers>
</membership>

Open your ASP.Net Configuration site (With the web site project loaded in Visual Web
Developer, select Website > ASP.NET Configuration). Select MySQLMembershipProvider from Membership Provide’s list and MySQLRoleProvider from Role Provider at Provider Tab. You can also test them if there is connection.

I had these errors during the learning process :) :

There is a problem with your selected data store. This can be caused by an invalid server name or credentials, or by insufficient permission. It can also be caused by the role manager feature not being enabled. Click the button below to be redirected to a page where you can choose a new data store.

The following message may help in diagnosing the problem: Unable to initialize provider. Missing or incorrect schema. (c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\machine.config line 145)

You could also see these pages. They get really helpfull for me:

www.dotnetsurfers.com
blog.nolanbailey.com
forums.asp.net

SLQ Manager’da tüm harfleri büyütme

Windows Logo 20×20 TR
MS SQL Server için kullandığımız SQL Manager’da seçili metindeki tüm harfleri büyük yapmak istiyorsak ekstra programa ihtiyacımız yok. Tek yapmanız gereken metni seçip Ctrl+Shift+U’ya basmak. Tam tersi içinse Ctrl+U kısayolunu kullanabilirsiniz. Artık özel ifadeleri yazarken Shift’e basmama ya da Caps Lock’u açmama gerek kalmadı :) .. Aynı şey Visual Studio, Notepad++ ve benzeri programlarda da geçerlidir.

EN
To convert upper case all letters in a selected text in VS or SQL Manager or Notepad++ just push Ctrl+Shift+U ;) for the reverse operation use just Ctrl+U