ASP.NET MVC 5を使ってコントローラーからデータにアクセスする
ASP.NET MVCの構成の特徴は、モデル、ビュー、コントローラーがそれぞれ切り分けられていることです。その中で、モデルのデータへのアクセスはコントローラーの役割となります。この記事では基本的な処理方法について触れていきます。
- プログラマー
- ASP.NET MVCでデータにアクセスするのはどういう流れになるんですか?
- プロジェクト
リーダー - コントローラーの部分がその役割を担いますね。少し複雑になるので、なるべく簡単なコードを交えてみていきましょう。
ASP.NET MVCを使ったWeb開発の流れ
ASP.NET MVCにおいて、まずモデルのデータそのものを作成する必要があります。Webアプリケーション開発をする際には、簡単なテンプレートが用意されているので、その構成に従って作成していくことになるでしょう。その後、モデルを扱うビューの作成と実装、そして最後にコントローラーを作成します。
コントローラーからモデルへのアクセス方法
コントローラーからモデルのデータへのアクセス方法を説明していきます。まず、実装したモデルのインスタンスを作成し、設定したメンバ変数に対して値を設定します。それをビューに渡すことで、画面上にデータが表示されるようになるでしょう。実際のASP.NET MVCのWebアプリケーション開発では、データベースとの連携やデータの加工なども絡んできます。
最も単純なコントローラーからデータへのアクセス
モデルクラス
1
2
3
4
5
6
7
8
9
10
11
|
using System;
using System.Web;
namespace AspNetMvcModel.Models
{
public class Model_test
{
public int num;
public string str;
}
}
|
ビュー
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
@model AspNetMvcModel.Models.Model_test
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Sample</title>
</head>
<body>
<div>
<p>モデルのデータの内容</p>
<div>@Html.Encode(Model.num)</div>
<div>@Html.Encode(Model.str)</div>
</div>
</body>
</html>
|
コントローラー
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
using System;
using System.Web;
using System.Web.Mvc;
namespace AspNetMvcModel.Controllers
{
public class DefaultController : Controller
{
public ActionResult Index()
{
return View();
}
public ActionResult Sample()
{
Models.Model_test s_model = new Models.Model_test();
s_model.num = 123;
s_model.str = "あいう";
return View(s_model);
}
}
}
|
このコードでは、もっとも単純なコントローラーからモデルのデータのやり取りの構成を示しています。
- プログラマー
- 簡単なコードだとデータのやり取りがどうなっているかわかりやすいですね。
- プロジェクト
リーダー - 実際の開発ではもっと複雑になるので、どの部分に実装すれば良いかを理解しておく必要があるでしょう。
モデルはデータの箱とイメージする
コントローラーからデータにアクセスするイメージとしては、中身の見えない箱をイメージするとわかりやすいかもしれません。その箱をモデルとすると、箱を手元に持ってきて(インスタンス)箱を開けて中身(データ)を取り出す役目がコントローラー、さらにその中身を受け取るのがビューということになります。
FEnet.NETナビ・.NETコラムは株式会社オープンアップシステムが運営しています。
株式会社オープンアップシステムはこんな会社です
秋葉原オフィスには株式会社オープンアップシステムをはじめグループのIT企業が集結!
数多くのエンジニアが集まります。
-
スマホアプリから業務系システムまで
スマホアプリから業務系システムまで開発案件多数。システムエンジニア・プログラマーとしての多彩なキャリアパスがあります。
-
充実した研修制度
毎年、IT技術のトレンドや社員の要望に合わせて、カリキュラムを刷新し展開しています。社内講師の丁寧なサポートを受けながら、自分のペースで学ぶことができます。
-
資格取得を応援
スキルアップしたい社員を応援するために資格取得一時金制度を設けています。受験料(実費)と合わせて資格レベルに合わせた最大10万円の一時金も支給しています。
-
東証プライム上場企業グループ
オープンアップシステムは東証プライム上場「株式会社オープンアップグループ」のグループ企業です。
安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。
株式会社オープンアップシステムに興味を持った方へ
株式会社オープンアップシステムでは、開発系エンジニア・プログラマを募集しています。
年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
まずは話だけでも聞いてみたい場合もOK。お気軽にご登録ください。
ASP.NET新着案件New Job
-
Web受注システム運用保守/VB.NET/東京都港区/【WEB面談可】
月給50万~60万円東京都港区(品川駅) -
Web受注システム開発のテスター/VB.NET/東京都港区/【WEB面談可】
月給25万~35万円東京都港区(品川駅) -
営業フロントシステム運用保守/ASP.NET/東京都江東区/【WEB面談可】
月給50万~60万円東京都江東区(木場駅) -
営業フロントシステム開発のテスター/ASP.NET/東京都江東区/【WEB面談可】
月給25万~35万円東京都江東区(木場駅) -
営業フロントシステム開発/ASP.NET/東京都江東区/【WEB面談可】
月給35万~41万円東京都江東区(木場駅) -
Web受注システム開発/VB.NET/東京都港区/【WEB面談可】
月給45万~60万円東京都港区(品川駅)