28 Ocak 2014 Salı

MySQL "Failed to find or load the registered .Net Framework Data Provider" hatası


Merhaba cinlerim..  Yeni bir işten çıkışla daha karşınızdayım :)) Yok mu artık? Yok mu başka tepki arkadaş herkes mi aynı tepkiyi verir :)) Belki şurada kendimize bir başarı hikayesi yazıyoruz,, ne biliyorsunuz? :P

Farkettiyseniz işten çıkış dedim,, işsizlik demedim,, keza başladığımız Ticket System projesi üzerinde çalışmaya devam ediyorum. Bir yandan da iş aramaya başlarım belki,, ama sıkılmadım desem yalan olur şu ekabir sınıfından. Bakalım hayırlısı, iyi insanlarla karşılaşıp, ben de karşılaşılan o iyi insanlardan olayım da gerisi teferruat. ;)

Teferruatları geçtikten sonra başlığımızdaki asıl konuya girelim.. :)

Biliyorsunuz Ticket Systemimiz için seçmiş olduğumuz vtys MySQL. Neden bunu seçtiğimizle ilgili Temel Reis taramalı tüfek gibi  nedenler saymıştı. Bunlardan aklımda en çok kalanlar beleşlik ve hız :P türk müyüm neyim. Neyse belki daha sonra neden MySQL diye klişe bir yazı da yazarım. Klişeleri sevmesem de hayatımızda büyük yerleri olduğundan görmezden gelemeyiz. Bir de klişe oluyorlarsa bir bildikleri de var sonuçta.

İşte biz bu MySQL i seçtik ya hani, tabi kendisini de indirip kurduk ister istemez. ( http://dev.mysql.com/downloads/windows/installer/ ) Veritabanını da tasarladık Navicat yardımıyla.. Tablolar alanlar fln günümüzü gün ederken sıra sistemimizden veritabanına kullanıcı kaydetmeye geldii...

Zaten MVC ye alışmaya çalışan haleti ruhiyem insert işleminde "Failed to find or load the registered .Net Framework Data Provider" hatasını görünce bayağı bozulmuştu aslında yine beceremedim diye.. Sonra Temel Reis yine içime su serpti ve bu hatanın çok yaygın olduğunu söyleyip olaya el attı. Araştırdık ettik, çözüme ulaştık yılların tecrübesinin yardımıyla;
Meğer .Net Framework ümüzün machine.config dosyasına şu ayarı nakşetmek gerekiyormuş;


  <system.data>
    <DbProviderFactories>
 <add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.7.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
    </DbProviderFactories>
  </system.data>

Nerede bu machine.config; bende şuradaydı; C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config
sizde nerede bilemem tabii ki. Arama özelliğinden yararlanabilirsiniz. ( :p )

Bunu yaptıktan sonra visual studio yu bir kapatıp açın. Sonrasında o hatadan kurtulmuş ve veritabanınıza attığınız o ilk bebek kaydı gözleri dolu dolu seyredebilir olacaksınız.

Allah bağışlasın, vatana millete hayırlı bir kayıt olsun inşallah :)

Hiç yorum yok:

Yorum Gönder