C# MVC Web Api Projesinde Mysql Veritabanı ile Entity Framework Kullanmak

20-10-2019

Mysql bağlantısını C#'da yapabilmek için öncelikle MySQL for Visual Studio ve MySQL Connector/NET dosyalarını indirip kurmak gerekmektedir. Kurulum işleminden sonra Visual Studio'yu açınız.

Eğer Oracle giriş istiyorsa direk indirme linkleri sırasıyla aşağıdaki gibidir:

https://www.codesenior.com/sources/docs/tutorials/mysql-for-visualstudio-1.2.9.msi

https://www.codesenior.com/sources/docs/tutorials/mysql-connector-net-8.0.18.msi

Daha sonra projemize aşağıdaki nuget kütüphanelerini eklememiz gerekmektedir. Bunun için aşağıdaki paketleri yüklemelisiniz:

- MySql.Data
- MySql.Data.EntityFramework
- MySql.Data.EntityFrameworkCore

Son işlem adımında EntityFramework diye bir klasör açıp, sağ tıklayarak Add New Item denir ve aşağıdaki işlemler yapılır:

Bu kısımda radio butonlardan birini seçip işleme devam edilir. Bir sonraki ekranda veritabanı tabloları gelir. Hangi tabloların code-first ile otomatik oluşturulmasını istiyorsak onları seçmeliyiz. Seçim işleminden sonra Web.config dosyasında otomatik olarak connection strings oluşur:

<entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
        <parameters>
            <parameter value="mssqllocaldb" />
        </parameters>
    </defaultConnectionFactory>
    <providers>
        <provider invariantName="System.Data.SqlClient"
                  type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
        <provider invariantName="MySql.Data.MySqlClient"
                  type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.EntityFramework, Version=8.0.18.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d">
        </provider>
    </providers>
</entityFramework>
<connectionStrings>
    <add name="MapTonerDataModel"
         connectionString="server=localhost;user id=myuce;password=12345678910;persistsecurityinfo=True;database=yakub_b2bstore"
         providerName="MySql.Data.MySqlClient" />
</connectionStrings>

© 2019 All rights reserved. Codesenior.COM