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
ASP.NET Core MVC-リリース履歴
日付
バージョン
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 パターンの実装である。
関連項目
脚注
参考文献
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
外部リンク