1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

ASP.NET Core MVC コードファースト 単一テーブル サンプル

Posted at

内容

ASP.NET Core MVC Entity Framework コードファースト(Code First)を利用して、Companyクラスからデータベースを構築し、スキャフォールディング(Scaffolding)機能を実装する。

環境

  • Windows 10
  • Visual Studio 2017
  • Microsoft Edge
  • SQL Serve 2017
  • Microsoft SQL Server Management Studio 17
  • ASP.NET Core2.2
  • Windows PowerShell

手順

1.Visual Studio 2017起動 → 新しいプロジェクトの作成 → ASP.NET Core Webアプリケーション を選択
 プロジェクト名、保存場所を指定して OK ボタンを押す。
ASP.NET Core MVC コードファースト サンプル_01.png

2.Web アプリケーション(モデル ビュー コントローラ )を選択 → 認証の変更ボタンを押す
ASP.NET Core MVC コードファースト サンプル_02.png

3.個別のユーザーアカウントを選択して OK ボタンを押す
ASP.NET Core MVC コードファースト サンプル_03.png

4.認証 が 個別のユーザーアカウントに変更されているのを確認 → OK ボタンを押す
ASP.NET Core MVC コードファースト サンプル_04.png

5.プロジェクトが作成される
ASP.NET Core MVC コードファースト サンプル_05.png

6.F5 ボタン(デバッグ開始)を押して、動作を確認する → Microsoft Edge が立ち上がって、Home画面が表示される
ASP.NET Core MVC コードファースト サンプル_06.png

7.Models フォルダ内にCompanyクラスを作成する
ASP.NET Core MVC コードファースト サンプル_07.png

namespace WebApplication1.Models
{
    public class Company
    {
        public int Id { get; set; }
        public string Name { get; set; }
    }
}

8.新規スキャフォールディングアイテムを追加する
 Controllersフォルダ右クリック → 追加 → 新規スキャフォールディングアイテム
ASP.NET Core MVC コードファースト サンプル_08.png
→ Entity Framework を使用したビューがある MVCコントローラ を選択して 追加 ボタンを押すASP.NET Core MVC コードファースト サンプル_09.png
→ モデルクラス(Company)とデータコンテキストクラス を設定して 追加ボタンを押す
ASP.NET Core MVC コードファースト サンプル_10.png

9.Controllersフォルダ内に、CompaniesController.cs が作成される
ASP.NET Core MVC コードファースト サンプル_11.png

10.Views フォルダ内に Companies フォルダが作成されて、そのなかに Create.cshtml, Delete.cshtml, Details.cshtml, Edit.cshtml, Index.cshtml が作成される
ASP.NET Core MVC コードファースト サンプル_12.png

11.データベース接続文字の修正
appsettings.json を開いて、接続文字を修正する
Server=(localdb)\mssqllocaldb を Server=localhost\SQLEXPRESS に修正

{
  "ConnectionStrings": {
    "DefaultConnection": "Server=localhost\\SQLEXPRESS;Database=aspnet-WebApplication1-B61014F3-4288-42CC-82EA-CAC2D4F327EF;Trusted_Connection=True;MultipleActiveResultSets=true"
  },
  "Logging": {
    "LogLevel": {
      "Default": "Warning"
    }
  },
  "AllowedHosts": "*"
}

12.PowerShell を起動 → プロジェクトのディレクトリに移動 → dotnet ef コマンドを実行

dotnet ef migrations add Initial
dotnet ef database update 

ASP.NET Core MVC コードファースト サンプル_13.png

13.Dataフォルダ、Migrationsフォルダ内に 20191001055138_Initial.cs が作成されている
ASP.NET Core MVC コードファースト サンプル_14.png

14.データベースを確認する
 SQL Server Management Studio からデータベースを確認する
 接続文字と同じ名前のデータベースが作成されている
ASP.NET Core MVC コードファースト サンプル_15.png

15.テーブルを確認する
 → IdとNameを持つ、テーブルが作成されている
ASP.NET Core MVC コードファースト サンプル_16.png

16.F5 ボタン(デバッグ開始)を押して、動作を確認する
アドレスの最後を Companies にする →  Index 画面が表示される
ASP.NET Core MVC コードファースト サンプル_17.png
ASP.NET Core MVC コードファースト サンプル_18.png

17.Create New を押すと新規登録できる
ASP.NET Core MVC コードファースト サンプル_19.png

18.登録されたデータが Index 画面に表示される
 Edit 選択で編集、Details で詳細表示、 Delete で削除できる
ASP.NET Core MVC コードファースト サンプル_20.png
ASP.NET Core MVC コードファースト サンプル_21.png
ASP.NET Core MVC コードファースト サンプル_22.png
ASP.NET Core MVC コードファースト サンプル_23.png

19.完成

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?