川崎モンスター

プログラムなどの技術的な内容をまとめていきます

【C#】ASP.NET CoreでMySQLを利用する(MySQL接続設定編)②

f:id:madsoldiers:20171023004543p:plain

こんにちは、川崎モンスターのまっずです。

今回は、前回の続きで、オラクル純正のSQLコネクタだとエラーになるため、別の方法について記載していきます。

kawasaki-monster.hatenablog.jp

その②  Pomelo.EntityFrameworkCore.MySqlを使う方法

こちらはサードパーティ製のMySQLプロバイダーになります。こちらを使ってMySQLに接続できるように設定します。appsettings.jsonの設定は、前回の記事と同じ内容でOKです。

まず、ソリューションエクスプローラの プロジェクト名を右クリックし、[Nugetパッケージの管理(N)...]を選択します。

f:id:madsoldiers:20171023001508p:plain

表示された画面の上部に「参照」「インストール済み」「更新プログラム」とあるので、「参照」を選択します。そして、検索窓に「MySQL.Data.EntityFrameworkCore」と入力すると、一番表示部分に「Pomelo.EntityFrameworkCore.MySql
作成者:Pomelo.EntityFrameworkCore.MySql」とアイテムが表示されるので、これをインストールします。

f:id:madsoldiers:20171023004939p:plain

f:id:madsoldiers:20171023005126p:plain

次に、ソリューションエクスプローラから、「Startup.cs」を開きます。

そして、前回追加した以下のusingを削除します。

using MySQL.Data.EntityFrameworkCore;
using MySQL.Data.EntityFrameworkCore.Extensions;

また、同じくStartup.csのUseMySQLの部分をUseMySqlに変更します。

// This method gets called by the runtime. Use this method to add services to the container.
public void ConfigureServices(IServiceCollection services)
{
     services.AddDbContext(options =>
        options.UseMySql(Configuration.GetConnectionString("DefaultConnection")));
       

 


これで、一度ビルドして実行すると、下記のように無事に画面が表示されるようになります。

f:id:madsoldiers:20171023010122p:plain

やっとMySQLに無事に接続が完了!と思いたいのですが、まだ続きがあります。

それはまた次回へ。