ASP.NET MVC Framework
ASP.NET MVCは、マイクロソフトによって開発されたWebアプリケーションフレームワークであり、 Model View Controller (MVC)パ…
| 開発元 | マイクロソフト |
|---|---|
| 最終版 |
5.2.7
/ 2018年11月28日[1] |
| 最新評価版 |
6.0.0-rc2
/ 2016年5月17日[2] |
| リポジトリ | |
| プログラミング 言語 | C#, VB.NET[3] |
| 対応OS | Cross-platform |
| プラットフォーム | .NET Framework, Mono |
| 後継 | ASP.NET Core |
| 種別 | Webアプリケーションフレームワーク |
| ライセンス | Apache License 2.0 |
| 公式サイト |
dotnet |
ASP.NET MVCは、マイクロソフトによって開発されたWebアプリケーションフレームワークであり、 Model View Controller (MVC)パターンを実装している。新規の開発はすでに停止している。 プロプライエタリソフトウェアであるASP.NET Web Formsとは分離されており、ASP.NET MVCはオープンソースソフトウェアとなっている。
その後、ASP.NET Coreがリリースされ、ASP.NET、ASP.NET MVC、ASP.NET Web API、ASP.NET Web Pages (Razorページのみを使用するプラットフォーム)が統合された。 MVC 6はCoreのために放棄され、リリース予定はない。Coreは現在、「.NET 5」に統合予定である[4]。
背景
ASP.NETをベースとしているASP.NET MVCを使用すると、ソフトウェア開発者は、モデル、ビュー、コントローラーの3つの役割の組み合わせでWebアプリケーションを構築できる。 MVCモデルは、次の3つの論理層でWebアプリケーションを定義する。
- モデル(ビジネス層)
- ビュー(表示レイヤー)
- コントローラー(入力制御)
モデルは、アプリケーションの特定の側面の状態を表す。コントローラーは相互作用を処理し、アプリケーションの状態の変化を反映するようにモデルを更新してから、情報をビューに渡す。ビューは、コントローラーから必要な情報を受け取り、その情報を表示するためのユーザインタフェースを描画する[5]。
2009年4月、ASP.NET MVCソースコードは、 Microsoft Public License (MS-PL) の下でリリースされた[6]。
「ASP.NET MVCフレームワークは、既存のASP.NETの機能と統合された、軽量で[7]高度にテスト可能なプレゼンテーションフレームワークである。これらの統合された機能のいくつかは、マスターページとメンバーシップベースの認証を使う。 MVCフレームワークはSystem.Web.Mvcアセンブリで定義されている[8]。」
ASP.NET MVCフレームワークは、インタフェースベースのコントラクトを使用してモデル、ビュー、およびコントローラーを結合し、それによって各コンポーネントを個別にテストできるようにする[要出典]。
Apache License2.0リリース
2012年3月、 スコット・ガスリーはブログで、マイクロソフトがオープンソースライセンス(Apache License 2.0)に基づきWebスタックの一部(ASP.NET MVC、 Razor 、およびWeb APIを含む)をリリースしたことを発表した[9]。
ガスリーは次のように述べた。「そうすることで、コミュニティの全員がコードチェックイン、バグ修正、新機能の開発に関与してフィードバックを提供し、ソースコードとテストの最新バージョンの製品を毎日使用してビルドおよびテストできる、よりオープンな開発モデルが可能になる。」
ソースコードはCodePlexで公開されている。 ASP.NET Web Formsは、さまざまな理由でこのイニシアチブに含まれていない[10]。
リリース履歴
| 日付 | バージョン |
|---|---|
| 2007年12月10日 | ASP.NET MVC CTP |
| 2009年3月13日 | ASP.NET MVC 1.0 [11] |
| 2009年12月16日 | ASP.NET MVC 2 RC [12] |
| 2010年2月4日 | ASP.NET MVC 2 RC 2 [13] |
| 2010年3月10日 | ASP.NET MVC 2 [14] |
| 2010年10月6日 | ASP.NET MVC3ベータ版[15] |
| 2010年11月9日 | ASP.NET MVC 3 RC |
| 2010年12月10日 | ASP.NET MVC 3 RC 2 [16] |
| 2011年1月13日 | ASP.NET MVC 3 [17] |
| 2011年9月20日 | ASP.NET MVC4開発者プレビュー[18] |
| 2012年2月15日 | ASP.NET MVC4ベータ版[19] |
| 2012年5月31日 | ASP.NET MVC 4 RC [20] |
| 2012年8月15日 | ASP.NET MVC 4 [21] |
| 2013年5月30日 | ASP.NET MVC 4 4.0.30506.0 [22] |
| 2013年6月26日 | ASP.NET MVC5プレビュー[23] |
| 2013年8月23日 | ASP.NET MVC 5 RC 1 [24] |
| 2013年10月17日 | ASP.NET MVC 5 |
| 2014年1月17日 | ASP.NET MVC 5.1 |
| 2014年2月10日 | ASP.NET MVC 5.1.1 |
| 2014年4月4日 | ASP.NET MVC 5.1.2 |
| 2014年6月22日 | ASP.NET MVC 5.1.3 |
| 2014年7月1日 | ASP.NET MVC 5.2.0 |
| 2014年8月28日 | ASP.NET MVC 5.2.2 |
| 2015年2月9日 | ASP.NET MVC 5.2.3 |
| 2018年2月12日 | ASP.NET MVC 5.2.4 [25] |
| 2018年5月2日 | ASP.NET MVC 5.2.5 [26] |
| 2018年5月11日 | ASP.NET MVC 5.2.6 |
| 2018年11月29日 | ASP.NET MVC 5.2.7 |
| 日付 | バージョン |
|---|---|
| 2016年5月17日 | ASP.NET Core MVC 1.0.0-rc2 [27] |
| 2016年8月12日 | ASP.NET Core MVC 1.0.0 |
| 2016年8月17日 | ASP.NET Core MVC 1.0.1 |
| 2016年11月17日 | ASP.NET Core MVC 1.0.2 |
| 2017年3月6日 | ASP.NET Core MVC 1.0.3 [28] |
| 2017年5月9日 | ASP.NET Core MVC 1.0.4 |
| 2017年9月20日 | ASP.NET Core MVC 1.0.5 |
| 2016年11月14日 | ASP.NET Core MVC 1.0.6 |
| 2016年11月16日 | ASP.NET Core MVC 1.1.0 |
| 2017年1月27日 | ASP.NET Core MVC 1.1.1 |
| 2017年3月6日 | ASP.NET Core MVC 1.1.2 |
| 2017年5月9日 | ASP.NET Core MVC 1.1.3 |
| 2017年9月20日 | ASP.NET Core MVC 1.1.4 |
| 2017年11月14日 | ASP.NET Core MVC 1.1.5 |
| 2017年12月12日 | ASP.NET Core MVC 1.1.6 |
| 2018年3月13日 | ASP.NET Core MVC 1.1.7 |
| 2017年8月11日 | ASP.NET Core MVC 2.0.0 [29] |
| 2017年11月14日 | ASP.NET Core MVC 2.0.1 |
| 2018年1月9日 | ASP.NET Core MVC 2.0.2 |
| 2018年3月13日 | ASP.NET Core MVC 2.0.3 |
| 2018年5月30日 | ASP.NET Core MVC 2.1.0 [30] |
| 2018年6月18日 | ASP.NET Core MVC 2.1.1 [31] |
| 2018年12月4日 | ASP.NET Core MVC 2.2.0 [32] |
| 2019年9月29日 | ASP.NET Core MVC 3.0.0 |
| 2019年12月3日 | ASP.NET Core MVC 3.1.0 [33] |
| 2020年1月14日 | ASP.NET Core MVC 3.1.1 [34] |
ビューエンジン
ASP.NET MVC3およびMVC4フレームワークで使用されるビューエンジンは、 RazorとWeb Formsである[35][36]。 両方のビューエンジンともMVC3フレームワークの一部である。デフォルトでは、MVCフレームワークのビューエンジンは、Razor .cshtmlと.vbhtml 、またはWeb Formsの.aspxページを使用して、データを構成するユーザインタフェースページのレイアウトを設計する。異なるビューエンジンも使用できる[37]。 さらに、デフォルトのASP.NET Web Formsのポストバックモデルの替わりに、すべての対話はASP.NET ルーティングメカニズムを通じてコントローラーにルーティングされる。ビューは異なるURLにマップできる[5]。
その他のビューエンジン:
- MVCContribライブラリには、Brail、NDjango、NHaml、NVelocity、SharpTiles、Spark、StringTemplate、XSLTの8つの代替ビューエンジンが含まれる[38]。
- StringTemplate View Engineは.NETにポートされたJavaテンプレートエンジンであるStringTemplateを利用する [39]。
- SparkはASP.NET MVC(およびCastle Project MonoRail)フレームワークのビューエンジンである[40]。
- NDjangoはDjango Webフレームワークのテンプレート言語の.NETへのポートであえる。 F#で記述されており、IntelliSenseの完全サポートを含むVisual Studio拡張機能が付属している[41]。
- Naked Objects for .NETは、ASP.NET MVCを使用したNaked Objectsパターンの実装である。
関連項目
- Model-View-ViewModel
- Model-View-Adapter
- Model-View-Presenter
- Observer パターン
- Presentation–Abstraction–Control
- Hierarchical Model–View–Controller
脚注
- ^ “Nuget package Microsoft.AspNet.Mvc”. 2019年1月10日閲覧。
- ^ “MVC Releases”. Official Microsoft ASP.NET Site. 2016年5月18日閲覧。
- ^ Rick Anderson. “Intro to ASP.NET MVC 3 (VB)”. The Official Microsoft ASP.NET Site. 2015年1月17日閲覧。
- ^ https://devblogs.microsoft.com/dotnet/introducing-net-5/
- ^ a b Scott Guthrie. “ASP.NET MVC Framework”. 2007年10月22日時点のオリジナルよりアーカイブ。2007年10月23日閲覧。
- ^ Scott Guthrie. “ASP.NET mvc 1.0 Source Released”. 2009年4月3日時点のオリジナルよりアーカイブ。2009年4月2日閲覧。
- ^ Koirala (2014年9月27日). “Webform vs MVC performance comparison done with 25 user load test.”. codeproject. 2014年9月27日閲覧。
- ^ “ASP.NET MVC”. aspnet4.com. 2015年1月17日閲覧。
- ^ Scott Guthrie. “ASP.NET MVC, Web API, Razor and Open Source”. 2012年3月29日閲覧。
- ^ Scott Hanselman. “ASP.NET MVC 4, ASP.NET Web API and ASP.NET Web Pages v2 (Razor) now all open source with contributions”. 2012年3月29日閲覧。
- ^ “Download ASP.NET MVC 1.0 from Official Microsoft Download Center”. マイクロソフト. 2015年1月17日閲覧。[リンク切れ]
- ^ Phil Haack. “ASP.NET MVC 2 RC Released”. 2015年1月17日閲覧。
- ^ Phil Haack. “ASP.NET MVC 2 RC 2 Released”. 2015年1月17日閲覧。
- ^ “Download ASP.NET MVC 2 RTM from Official Microsoft Download Center”. マイクロソフト. 2015年1月17日閲覧。
- ^ “ASP.NET MVC 3”. The Official Microsoft ASP.NET Site. 2015年1月17日閲覧。
- ^ “Announcing ASP.NET MVC 3 (Release Candidate 2)”. weblogs.asp.net. 2015年1月17日閲覧。
- ^ “Download ASP.NET MVC 3 RTM from Official Microsoft Download Center”. マイクロソフト. 2015年1月17日閲覧。
- ^ “ASP.NET”. CodePlex. 2015年1月17日閲覧。
- ^ “ASP.NET MVC 4”. The Official Microsoft ASP.NET Site. 2015年1月17日閲覧。
- ^ “MSDN Blogs”. マイクロソフト. 2015年1月17日閲覧。
- ^ “MSDN Blogs”. マイクロソフト. 2015年1月17日閲覧。
- ^ “ASP.NET and Web Tools 2012.2 Release Notes”. The Official Microsoft ASP.NET Site. 2015年1月17日閲覧。
- ^ Microsoft ASP.NET Team. “ASP.NET and Web Tools for Visual Studio 2013 Release Notes”. The Official Microsoft ASP.NET Site. 2015年1月17日閲覧。
- ^ “Microsoft ASP.NET MVC 5.2.2”. NuGet. 2015年1月17日閲覧。
- ^ “Announcing ASP.NET MVC 5.2.4, Web API 5.2.4, and Web Pages 3.2.4”. マイクロソフト. 2018年3月14日閲覧。
- ^ “Announcing ASP.NET MVC 5.2.5, Web API 5.2.5, and Web Pages 3.2.5”. マイクロソフト. 2018年5月4日閲覧。
- ^ “aspnet/Mvc”. GitHub. 2016年9月30日閲覧。
- ^ “NuGet Gallery: Microsoft.AspNetCore.Mvc”. 2018年3月16日閲覧。
- ^ “Release 2.0.0 · aspnet/Mvc”. Official Microsoft ASP.NET Site. 2017年8月29日閲覧。
- ^ “Microsoft.AspNetCore.Mvc”. NuGet. 2018年5月30日閲覧。
- ^ “Microsoft.AspNetCore.Mvc”. NuGet. 2018年6月18日閲覧。
- ^ “aspnet/AspNetCore”. マイクロソフト (2019年11月14日). 2019年11月14日閲覧。
- ^ “dotnet/aspnetcore”. マイクロソフト. 2020年12月21日閲覧。
- ^ “dotnet/aspnetcore”. マイクロソフト. 2020年12月21日閲覧。
- ^ “ScottGu's Blog - Introducing "Razor" – a new view engine for ASP.NET”. asp.net. 2020年12月21日閲覧。
- ^ “ASP.NET MVC 3”. The Official Microsoft ASP.NET Site. 2020年12月21日閲覧。
- ^ “Scott Hanselman's ASP.NET MVC Preview 2 Screencast Tutorials”. 2008年10月29日時点のオリジナルよりアーカイブ。2008年10月13日閲覧。
- ^ MVCContrib
- ^ “string-template-view-engine-mvc - ASP.Net MVC ViewEngine for StringTemplate - Google Project Hosting”. google.com. 2020年12月21日閲覧。
- ^ “Spark View Engine”. CodePlex. 2020年12月21日閲覧。
- ^ “ndjango - An implementation of the Django Template Language on the .NET platform, using the F# language. - Google Project Hosting”. google.com. 2020年12月21日閲覧。
参考文献
- Jon Galloway, Phil Haack, Brad Wilson, and K. Scott Allen, Professional ASP.NET MVC 3, Wrox, 2011, ISBN 1-118-07658-3
- Jeffrey Palermo, Jimmy Bogard, Eric Hexter, Matthew Hinze, and Jeremy Skinner, ASP.NET MVC 4 in Action, Manning Publications, 2012, ISBN 978-1617-29041-1
- Steven Sanderson, Adam Freeman, Pro ASP.NET MVC 3 Framework, Second Edition, Apress, 2011, ISBN 1-4302-3404-0
- Jonathan McCracken, Test-Drive ASP.NET MVC, Pragmatic Bookshelf, 2010, ISBN 1-934356-53-0
- Stephen Walther, ASP.NET MVC Framework Unleashed, Sam's, 2009, ISBN 0-672-32998-0
- Arnaud Weil, Learn ASP.NET MVC, 2015, ISBN 1-32648303-X
- Andrew Lock, ASP.NET Core in Action, Manning Publications, 2018, ISBN 978-1617-29461-7
外部リンク
Content Disclaimer
Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.
- The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
- There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
- It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
- Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
- Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.