.NET開発者のためのブログメディア
【ASP.NET MVC入門その2】ASP.NET MVCでModelクラスの実装
「ASP.NET MVC」を使用してWebアプリケーションを作成します。
ASP.NET MVCでWebアプリケーションを作成する際、データのやりとりを するのに使用するのが、MVCの「M」の部分となるModelです。
- SE
- ASP.NET MVCを使ってみたいです。Modelの役割や作り方を教えてください。
- PM
- ASP.NET MVCのModelはたくさんの機能があり、データベース関連の処理を実装するのに大いに役立ちます。一緒に確認しましょう。
目次
ASP.NET MVCのModelとは
ASP.NET MVCのModelとは、データのやりとりをするためのクラスです。
例えば、Webアプリケーションで何かデータを検索したい時、アプリの画面上で検索ボタンがクリックされた場合を考えます。その際、Modelはどういう内容で検索するのかという要求を受け取り、データベースからデータを検索します。
検索した結果を箱に詰め、データを返却します。
返却されたデータが、実際にアプリの画面上に検索結果として表示されるという流れです。
ASP.NET MVCは、MVCのそれぞれで役割が異なっており、そのことで実装や実装後の修正がしやすくなるメリットがあります。
Modelの役割はデータベースにアクセスすることです。それ以外の画面表示のロジックや、データの内容によって分岐、繰り返しをするような処理はModelの対象外となります。
よって、Modelに実装する内容を明確にして、開発を進めることが重要です。
ASP.NET MVCのModelクラスの実装方法
それでは実際にModelを実装していきます。
使用する環境はVisual Studio 2017です。
まず行うことは、店舗の情報を管理するModelクラス(Shopクラス)の作成です。
- Visual Studio 2017を使用してASP.NET MVCのプロジェクトを作成し、認証を「個別のユーザーアカウント」で作成します。
- 作成が完了したら、右側に表示されている「ソリューションエクスプローラー」で、「Models」のフォルダを右クリックし、追加→クラスを選択します。
以下の画面が表示されるので、名前を入力して追加ボタンをクリックします。
- 作成したShop.csにModelの定義を記載してください。
これが実際のデータベースのテーブル定義です。
以下にコードを記載します。1234567891011121314using System.ComponentModel.DataAnnotations;using System.ComponentModel.DataAnnotations.Schema;namespace WebApplication1.Models{public class Shop{[Key][DatabaseGenerated(DatabaseGeneratedOption.Identity)]public int Id { get; set; }public string Name { get; set; }}}今回は、「id」と「name」というカラムを作成します。
[Key]というのがプライマリーキーの定義です。
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]というのをつけると、プライマリーキーが自動採番されます。 - 追加したテーブルの定義を「IdentityModels.cs」に追加します。
テーブルの変数名は複数形で記載するのが一般的です。
1public DbSet<Shop> Shops { get; set; }追加後は以下のようになります。
- Visual Studio 2017の表示メニューから、その他のウィンドウ→パッケージマネージャーコンソールを選択します。
表示されたコンソールで、以下のコマンドを実行してください。
1Enable-MigrationsShopテーブルのマイグレーションを追加します。
マイグレーションとは、Modelから実際のテーブルを作る機能です。
以下のコマンドを実行してください。1Add-Migration Shopテーブルの追加を実際にデータベースに反映します。
以下のコマンドを実行してください。1Update-Database以上で実際にデータベースが作成されます。
- Visual Studio 2017の表示メニューから、SQL Serverオブジェクトエクスプローラーを選択します。
このエクスプローラーでデータベースを確認することが可能です。
以下のように、Shopsテーブルが作成されていることが確認できます。
以上で、Modelクラスを実装して、Modelクラスからデータベースを作成することができました。
Modelクラスを実装すれば、テーブルを作成するためのSQL文を記載する必要がないので、簡単にテーブルが作成できます。
- SE
- Modelクラスを実装することで、そこから実際のデータベースにテーブルを作成できるのですね。
- PM
- そうですね。テーブルを作成するところまでスムーズに進めることができます。Modelクラスの実装にぜひチャレンジしてみてください!
Modelクラスを実装するとテーブルの作成までがスムーズ
今回は、Modelクラスを作成して、実際のデータベースにテーブルを作成するところまで説明しました。
Modelクラスは、テーブルと1対1で各カラム用の変数を定義していくので、Modelクラスの実装方法を理解して、使っていきましょう。
Search キーワード検索
Popular 人気の記事
-
.NET Framework 3.5をWindows10にインストールする方法
2019年10月24日 -
EdgeとChromeはどう違う?それぞれのスペック7つを比較解説!
2020年09月28日 -
【VB.NET入門】DataGridViewの使い方まとめ
2019年12月22日 -
VB.NETをおすすめする3つの理由とは?VBAとの違いや勉強方法を解説
2019年12月21日 -
Windows10のテキストエディタおすすめ20選!選ぶポイント3つ
2020年04月28日
reccomended おすすめ記事
-
C#のusingステートメントでリソースの解放【Disposeとの違いとは】
2020年03月17日 -
【SQL Serverログの操作】トランザクションログの使用量を確認する方法
2020年03月16日 -
【.NETが統合】.NET 5の概要と今後のリリース予定
2020年03月05日